Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.07;
Скачать: CL | DM;

Вниз

Перехват нажатия на кнопку мыши   Найти похожие ветки 

 
gonzales   (2004-10-26 17:27) [0]

Задачка следующая,
надо сделать систему контекстного хэлпа, то есть при нажатии на кнопку появляется курсор со знаком вопроса и в дальнейшем при нажатии на другие компоненты происходил переход к соответствующему разделу справки по кейворду. Так вот, вопрос такой: как перехватить нажатие на кнопку мыши и понять над каким контролом она находится


 
alena.svt ©   (2004-10-26 18:33) [1]

Я ничего не поняла, но если чего то поняла то зачем так сложно
при клике на компонете или MouseMove
If Screen.Cursor = crТвойКурсор then
твои действия со справкой
else
код обработки события


 
gonzales   (2004-10-26 18:37) [2]

все ты правильно поняла, но просто не хоцца писать на каждый компонент обработчик. Ведь у меня есть HelpKeyword каждого компонента, есть функция  FindVCLWindow( const Pos: TPoint ): TWinControl;
Модуль: Controls

Функция возвращает оконное средство управления для местоположения, определенного параметром Pos. Если для данного местоположения нет оконных средств управления, то функция возвращает nil.
Вот, нужно только перехватить нажатие на кнопку и передать управление этой функции.
А вот как, не могу найти:(


 
clickmaker ©   (2004-10-26 18:39) [3]

а включение biHelp в BorderIcons + указание HelpContext для контролов - разве не проще?


 
Юрий Зотов ©   (2004-10-26 18:54) [4]

> gonzales   (26.10.04 17:27)  

Ничего не надо перехватывать и даже ничего не надо писать (кроме самого хелпа). См. [3] - надо просто подключить справку к программе, расставить у контролов свойство HelpContext и включить у форм флаг biHelp.

И все заработает само собой. А если вместо системной кнопки контекстной справки непременно нужна своя собственная, то просто из ее OnClick пошлите форме сообщение WM_CONTEXTMENU.


 
Юрий Зотов ©   (2004-10-26 20:18) [5]

Сорри, конечно WM_HELP, а не WM_CONTEXTMENU.


 
Asinus   (2004-10-26 23:53) [6]

на http://www.ec-software.com/comppage.htm есть библиотека компонентов



Страницы: 1 вся ветка

Текущий архив: 2004.11.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.035 c
4-1096511130
Khabibulin
2004-09-30 06:25
2004.11.07
Windows Name


3-1097329515
Pashkerton
2004-10-09 17:45
2004.11.07
Выборка из временной таблицы


1-1098708402
dfgdfgh
2004-10-25 16:46
2004.11.07
Как выделить другим цветом некоторые элементы в списке TListBox?


14-1097830782
Prohodil Mimo
2004-10-15 12:59
2004.11.07
Как в ВинХР запретить юзеру устанавливать программы?


1-1098466615
GuAV
2004-10-22 21:36
2004.11.07
Написать в TLabel.Caption многострочный техт.