Главная страница
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.01 c
14-25065
Top Gun
2002-12-19 19:55
2003.01.09
Тормоза в Мафии


1-24914
viper
2002-12-25 16:41
2003.01.09
ComboBox


14-25076
Driverrr
2002-12-21 10:19
2003.01.09
Нужны деньги!


3-24812
alex_dorin
2002-12-17 09:29
2003.01.09
формат отображения в DBGrid


1-24957
Evgeniy2
2002-12-26 22:15
2003.01.09
консоль