Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Не ловятся сообщения от мышиного колесика WM_MOUSEWHEEL [D7, WinXP]


Чайник ©   (2006-02-28 22:32:00) 

Создаю компонент от TCustomControl. По ходу дела ловлю сообщения мыши:

 TPanelGL = class(TCustomControl)
 private
 ...
   procedure WMMouseDownL(var msg : TWMMouse); message WM_LButtonDown;
   procedure WMMouseUpL(var msg : TWMMouse); message WM_LButtonUp;
   procedure WMMouseMove(var msg : TWMMouse); message WM_MouseMove;
   procedure WMMouseWheel(var msg : TWMMouseWheel); message WM_MouseWheel;


Все работает, кроме колеса.
Что я делаю не так?


Admeral   (2006-03-15 17:22:00) [1]

Ой! надо вмемто WM_поставить CM_.Извиняюсь.


AdmeraL   (2006-03-15 17:21:00) [2]

А меня тоже. Вот только компелятор не знает сообщения WM_MouseEnter, но распознаёт Wm_mouseLeave. Они что, находятся в разных юнитах?Есть аналогичные сообщения WM_MouseEnter.


Чайник   (2006-03-12 19:21:00) [3]

"Ура! Заработало!" (c) Кот Матроскин :

http://www.delphikingdom.com/asp/answer.asp?IDAnswer=40443


AdmeraL   (2006-03-12 15:21:00) [4]


> jack128 ©

А у тебя работает?


jack128   (2006-03-12 15:16:00) [5]

Скорее всего твой контрол не имет фокуса..


AdmeraL   (2006-03-12 15:00:00) [6]

Народ, попроверяйте у себя и сообщите результаты.Будем думать вместе.


AdmeraL   (2006-03-11 21:57:00) [7]

У меня тоже не реагирует. Странно.


Чайник   (2006-03-10 01:50:00) [8]

Пробовал перекрыть метод DoMouseWheel, который есть в TControle:

TPanelGL = class(TCustomControl)
protected
...
   function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer;  MousePos: TPoint): Boolean; override;

end;

function TPanelGL..DoMouseWheel(Shift: TShiftState; WheelDelta: Integer;  MousePos: TPoint): Boolean;
begin
 inherited;
 ...
 бла-бла-бла
 ...
end;


- все равно не работает. Такое ощущение, что форма это сообщение не передает своим контролам.
Кстати, чем отличаются сообщения WM_MOUSWWHEEL и CM_MOUSWWHEEL ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо