-
Ставлю глобальный хук на событие прокрутки мыши. Как узнать, есть ли еще кто-то на форме (например, spinedit в фокусе ввода), кто обработает это событие?
-
Лучше сказать "очередь обработчиков сообщения" mouse wheel
-
Любой контрол имеющий фокус обрабатывает это сообщение в своем ЦВС, другое дело что он просто может на него не реагировать (EDIT-у к примеру это не нужно, как и кнопке), поэтому постановка задачи изначально не верна.
-
Контрол с фокусом ввода дан в качестве примера. Речь о том, что если фокус ввода на SpinEdit и он на скролл реагирует - я должен об этом как-то узнать. Если фокус ввода в обычном Edit - он НЕ реагирует, тоже надо это знать.
И на основании полученного знания - решать, обрабатывать скролл МНЕ в контроле на котором все это расположено ,или не обрабатывать.
-
Я себе уже упростил задачу. Сделал хук таким образом, что я получаю указатель на контрол, который получил сообщение WM_MouseWheel
Теперь мне нужно узнать - а ОБРАБОТАЕТ ЛИ он это сообщение в принципе ?? или просто пропустит мимо "ушей".
-
или твоими терминами выражаясь, ОТРЕАГИРУЕТ ли он на это сообщение
-
> Дмитрий (18.03.15 22:16) [5]
> или твоими терминами выражаясь, ОТРЕАГИРУЕТ ли он на это > сообщение
Зависит от контрола, как, собс-но, он реагирует. Можно поискать WM_COMMAND или другие нотификации.
-- Regards, LVT.
-
Удалено модератором
-
> Дмитрий (18.03.15 22:16) [5] > > или твоими терминами выражаясь, ОТРЕАГИРУЕТ ли он на это > сообщение
а какая разница? Или пересылаешь ему сообщение, или нет.
|