![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DeckTop Click [D6, Win2k]
Axis_of_Evil © (2002-10-31 15:43:00)Как отловить клик по рабочему столу?
Пишите тут или мне на mail сливайте,
только при сливе здесь напишите,
чтоб я с нетерпением ждал
Axis_of_evil (2002-10-31 19:09:00) [1]Danke shoёn
Song (2002-10-31 17:47:00) [2]А что Вам мешает поискать вот так:
http://delphi.mastak.ru/cgi-bin/search.pl?words=%F5%F3%EA&n=1
Там и результатов - один.
Axis_of_evil (2002-10-31 16:38:00) [3]В какой статье я сходи?
Адресссс
Смысл переменной code?
А тоя все содрал с книги
Song (2002-10-31 16:31:00) [4]У тебя в callback ф-ии даже Code не анализируется... какой уж там "Кслик". Сходи в статье, найди там статью про хуки и посмотри как там он реализован.
Axis_of_Evil (2002-10-31 16:23:00) [5]2Song:
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1035787065&n=5
Song (2002-10-31 16:20:00) [6]хук.
Marcus (2002-10-31 16:09:00) [7]Рабочий стол - не что иное как ListView. Поэтому так:
hwnd := FindWindow("Progman", nil);
hwnd := FindWindowEx(hwnd, 0, "SHELLDLL_DefView", nil);
hwnd := FindWindowEx(hwnd, 0, "SysListView32", nil);
затем подменяешь его оконную процедуру своей:
OldDesktopProc := (WNDPROC)SetWindowLong(hwnd, GWL_WNDPROC, (LONG)MyDesktopProc);
и перхватываешь любые сообщения, не забыв в конце своей процедуры вызвать OldDesktopProc и при выходе из проги вернуть на место родную wndproc, а то вся винда накроется