| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Как обработать события колесика мыши если |
| Автор: ДЫМ 20.12.2004, 04:12 |
| Есть компонент PaintBox, но у него нет событий , OnMouseWheelUp и OnMouseWh, как его заставить реагировать на вращение колесика мыши? |
| Автор: Vladimir13 20.12.2004, 05:05 |
| я в свое время делал все на форме, где есть колесико. чуть заморочистее... но если так нужно колесико могу посоветовать еще как нибудь отловить колесико у Windows... хотя не знаю как , да и зачем, если есть форма. |
| Автор: Vit 20.12.2004, 07:48 |
| Ловить сообщения от колёсика... |
| Автор: Snowy 20.12.2004, 11:27 |
| Засунуть PaintBox в ScrollBox. Если нужно ловить колесико, то посмотри тут: http://forum.vingrad.ru/index.php?showtopic=31739 |
| Автор: ДЫМ 21.12.2004, 02:46 | ||
Но как? |
| Автор: Snowy 21.12.2004, 09:57 | ||
| Что как? Линк для чего дан? Там все написано. Кидаешь на форму TApplicationEvents. Создаешь событие OnMessage. Запихиваешь туда приведенный код и получаешь:
Вместо "вверх" и "вниз" подставляешь нужный тебе код. Только чем тебя скроллбокс не устроил? С ним гемороя меньше. |
| Автор: ДЫМ 22.12.2004, 02:19 |
| Snowy Спасибо за разъяснения |
| Автор: dm9 22.12.2004, 03:46 | ||
| Если делаешь компонент, всё гораздо проще. protected { Protected declarations } procedure Wheel (var Msg : TMessage); message WM_MOUSEWHEEL; А уж что и где в этом Msg - см. Help -> Windows SDK (см. WM_MOUSEWHEEL) Кстати, можно проще. Для этого события придумали класс... То есть тебе не понадобится вручную вытаскивать данные из Msg, за тебя это уже сделали... procedure Wheel (var Msg : TWMMouseWheel); message WM_MOUSEWHEEL;
Добавлено @ 03:52 PS А подумавши, добавлю... Так было бы, если бы PaintBox был полноценным окном. Я посмотрел, он таковым не является |
| Автор: badaninslava 3.6.2005, 20:06 |
| А как сделать наследнику TCustomPanel событие onMouseWheel? Добавлено @ 20:08 В справке написано, что наслудники TWinControl могут реагировать на это событие. Но я никак не могу допереть как без формы отловить кручение колёсика. Сообщением wm_MouseWheel что-то не выходит... |
| Автор: Dynamic 4.6.2005, 15:12 | ||
нафиг наследника:
|
| Автор: badaninslava 4.6.2005, 20:09 |
| Нет, я типа пишу новый компонент(для личного пользования) и хочу что-бы в нем было событие onMOUSEWHEEL. А как это сделать не знаю. |
| Автор: Quadr0 4.6.2005, 21:37 |
| ... |
| Автор: badaninslava 5.6.2005, 11:22 |
| Всё, я разобрался. Спасибо. |
| Автор: gesper 11.12.2013, 21:07 |
| А я вот не могу понять, какого фига у TControl есть OnMouseWheelUp , он виден при создании компонента на основе TPaintBox, но реакции на событие нет. что за чушь? |