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

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

Прокрутка SpinEdit / UpDown с пом. колеса мыши без исп. кнопок


Eugene L ©   (2005-05-31 17:41:00) 

Подскажите, пожалуйста, как это реализовать.
Хочу, чтобы при наведениии курсора на контрол и прокрутке колеса мыши значение в нем менялось, как если бы нажимались кнопки вверх/вниз.
Насколько я понимаю, копать надо в сторону WM_MOUSEWHEEL message.


Eugene L   (2005-05-31 18:34:00) [1]

Спасибо!
(А я в события формы и забыл заглянуть. Посмотрел - в самих контролах нет Wheel-событий - и подумал, что придется в WinAPI лезть.)


alpet   (2005-05-31 18:18:00) [2]

Я сделал обработчик (OnMouseWhell) для формы, а в нем определял какой контрол под курсором мыша находится.

Примерный код:

procedure TMForm.FormMouseWheel(Sender: TObject; Shift: TShiftState;
 WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
var h: THandle;

begin
h := WindowFromPoint (mousePos);
if h = spinEdit1.handle then
 begin
  if wheeldelta > 0 then spinEdit1.StepUp;
  if wheeldelta < 0 then spinEdit1.StepDown;
 end;
end;


Наверх

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