Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flash Приложения: AIR, Zinc и тд. (http://www.flasher.ru/forum/forumdisplay.php?f=94)
-   -   клик правой кнопкой мыши в AIR. Как перехватить? (http://www.flasher.ru/forum/showthread.php?t=103551)

NePridymal 07.11.2007 16:25

клик правой кнопкой мыши в AIR. Как перехватить?
 
Подскажите, пожалуйста, как перехватить клик правой кнопкой мыши в AIR приложении. Документацию рою - да что-то никак не получается найти. Заранее спасибо.

alexcon314 07.11.2007 16:44

проект во флэше или во флексе?

NePridymal 07.11.2007 17:40

во флеше

alexcon314 07.11.2007 18:26

возможно, меня поправят, но в AS3 нет поддержки правой кнопки. и даже нет поддержки Key.isDown() на котором строился перехватчик в AS2. за AIR точно не скажу.
можно обойти это так:
сделать мувик в 8-ой версии, экспортировать его в отдельный swf. в нем средствами AS2 перехватывать правый клик и рассылать событие по LocalConnections.
в основной муве, который AS3, подгружать его и по LocalConnections принимать событие от загруженного мувика.
оригинал идеи здесь
http://www.mdmforum.com/forum/index.php?showtopic=20638

etc 07.11.2007 19:41

Цитата:

Сообщение от alexcon314
возможно, меня поправят, но в AS3 нет поддержки правой кнопки.

Есть.

NePridymal 08.11.2007 15:50

Цитата:

Сообщение от __etc
Есть.

Подскажи пожалуйста, если не сложно, что там в AS3 с правой кнопкой?

etc 08.11.2007 16:10

Код:

(contextMenu = new ContextMenu()).addEventListener(ContextMenuEvent.MENU_SELECT, trace);

NePridymal 08.11.2007 17:22

Цитата:

Сообщение от __etc
Код:

(contextMenu = new ContextMenu()).addEventListener(ContextMenuEvent.MENU_SELECT, trace);

Спасибо.

Только в AIR-е так не работает... :(

etc 08.11.2007 17:42

Код:

(this.contextMenu = new NativeMenu()).addEventListener(Event.DISPLAYING, trace);

grunerasta 10.11.2007 23:58

О, у меня похожая задачка есть.
Только есть еще одна проблемка - мне нужно при правом клике по ячейке в датагриде запустить ее редактирование. Как сделать?

Код:

        public class SongRow extends DataGridItemRenderer
        {
                private var dataGrid:DataGrid;
                private var selected:Boolean=false;
                public function SongRow()
                {
                        super();
                        this.addEventListener(Event.RENDER,redraw);
                        var сontext:NativeMenu=new NativeMenu();
                        context.addEventListener(Event.DISPLAYING,editStart);
                        this.contextMenu=cm;
                       
                       
                }
                private function editStart(event:Event):void
                {
                        trace("Че делать?")
                }
//Далее всякий хлам

оффтоп: а накуя в форме ответа поле заголовок?


Часовой пояс GMT +4, время: 00:20.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.