|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Перехватить дублклик на рабочем столе
Как перехватить событие - двойной клик на пустом месте рабочего стола?
|
#2
|
||||
|
||||
есть такой пример, но он определяет нажатие клавиш вне формы. Думаю что если его поковырять то можно и к даблклику приспособить.
|
#3
|
||||
|
||||
В принципе, теоретически это делается так: даблклик во всей системе можно перехватывать хуками (Hooks - ловушки), для этого правда нужна отдельная DLL (хуки только через библиотеки). Затем когда уже можем перехватывать двойной клик при этом самом клике получаем активное окно, если это рабочий стол получаем выделенный объект на рабочем столе, если вы не знаете, то рабочий стол это обычный TListView. Т.е. выделенный объект можно узнать с помощью общения программы с рабочим столом сообщениями.
TAleD = class(TUser) public function HelpMe(ASubject, ARequest: String): String; function GiveMeExample(ASubject: String): TStringList; procedure WriteReview(APost: Integer; ADescription: TStringList); end; |