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

Вниз

WM_MouseWheel + MDI   Найти похожие ветки 

 
PVOzerski ©   (2002-12-25 22:49) [0]

Сейчас занялся отлавливанием багов программы, которую скоро сдавать,
наткнулся на глючок, требующий для своей ликвидации поотлавливать
работу колесика мыши. Прога MDI. Для начала сделал методы-заглушки begin end,
повесил их на сообщение WM_MouseWheel - одну - parent"у, другое - child"у.
Поставил в них по breakpoint"у. Запустил, покрутил колесиком... Результат удручающ:
breakpoint в child"е не срабатывает никогда, а в parent"е - только когда нет видимых
child"ов. Где копать, как лечить - ??? :^( Может, кто сталкивался с подобным?


 
Pat ©   (2002-12-26 00:57) [1]

Кажется сталкивался...
ApplicationEvents OnMessage:
if Msg.message=WM_MOUSEWHEEL then.....
Может быть поможет...


 
PVOzerski ©   (2002-12-26 10:19) [2]

Не помогает... А глючок такой: если открыто модальное окно (скажем, диалог открытия файла), а мышь находится над моей формой, то при движении колесиком форма выскаивает на передний план, модальное окошко прячется за ним, и пользователь остается перед формой, не реагирующей ни на клаву, ни на кнопки мыши. Если он опытный, он доберется до модального окна через Alt+Tab или таскбар (естественно, матерясь), а если совсем ламер...
Может, кто с таким боролся, поделится рецептом?


 
PVOzerski ©   (2002-12-26 13:13) [3]

Поделюсь собственным решением :^)

Перевел модальные диалоги в состояние "всегда верхнее") на этапе их onShow - диалоги открытия/закрытия файлов через
SetWindowPos(GetParent((Sender as tCommonDialog).handle),HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE);

диалог выбора цвета - через
SetWindowPos((Sender as tCommonDialog).handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE);

Так что кому надо - пользуйтесь.



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
6-25001
brestmarket
2002-11-09 15:27
2003.01.09
Поиск текста в WebBrowser не работает ?!


14-25049
Jackson
2002-12-12 21:17
2003.01.09
Задачи на Паскаль


3-24768
LV
2002-11-28 18:02
2003.01.09
Delphi-7.Чем делать отчёты к БД ???


6-24995
Kon2002
2002-11-07 19:13
2003.01.09
WinXP


7-25122
Lamer2000
2002-07-30 12:34
2003.01.09
Перехват нажати кнопки.