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

Вниз

Как отключать нажатие кнопок после выбора системной кнопки Help?   Найти похожие ветки 

 
Aleksandr.   (2006-08-16 14:18) [0]

К программе подключена справочная система. Диалоговое окно имеет biHelp в BorderIcons. После щелчка по кнопке справки и клика на любом визуальном объекте, кроме кнопок нормально открывается справка, а если кликнуть по TButton или TSpeedButton - срабатывает обработчик клика на эту кнопку. Есть какой-то универсальный механизм, которым можно это убрать, или нужно на каждой кнопке ставить проверку, не является ли курсор мыши справочным, и вызывать HelpContext в этом случае? Как, кстати, вообще, помимо состояния курсора, узнать, что была нажата кнопка справки?


 
Loginov Dmitry ©   (2006-08-17 07:45) [1]

щелчка по кнопке справки и клика на любом визуальном объекте, кроме кнопок нормально открывается справка, а если кликнуть по TButton или TSpeedButton - срабатывает обработчик клика на эту кнопку.

Про TButton - это вы зря. Все контроллы, имеющие свойство Handle (они имеют общего предка TWinControl), обрабатывают клик в данном режиме правильно (вернее (скорее всего) они его вообще не обрабатывают - винда просто не посылает некоторых сообщений контроллам в данном режиме).
Про компоненты, идущие от TGraphicControl винда не знает ничего, поэтому такая лажа. Однако, если вы утвеждаете, что можете определить не является ли курсор мыши справочным, то для блокировки сообщений мыши достаточно следующего кода:


procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
 var Handled: Boolean);
begin
 if НаЭкранеКурсорСправки then Handled := not Handled
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.073 c
2-1158164932
Danla13
2006-09-13 20:28
2006.10.01
картинки и Delphi


15-1157017476
Соловьев
2006-08-31 13:44
2006.10.01
Вакансии в Террасофте


15-1157740546
homm
2006-09-08 22:35
2006.10.01
Photoshop


1-1155760157
иван8511
2006-08-17 00:29
2006.10.01
Как протестировать архив winrar из программы


2-1158137710
BoBer
2006-09-13 12:55
2006.10.01
Возведеие в степень