Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.045 c
1-1156004220
Elf-Eluna-Alina
2006-08-19 20:17
2006.10.01
Вставить текст в RichEdit


2-1158119650
ZSergey
2006-09-13 07:54
2006.10.01
Ошибка конвертации, не могу понять ...


1-1156235494
BronOS
2006-08-22 12:31
2006.10.01
Метод DeleteRow


3-1153825860
tomkat
2006-07-25 15:11
2006.10.01
FireBird Embeded в реализации


2-1157964421
031178
2006-09-11 12:47
2006.10.01
Работа с DBComboBox




   Наверх