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

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

Крутим колесико над PaintBox


Vinum ©   (2008-05-20 23:18:00) 

Здравствуйте. Подскажите пожалуйста как мне определить направление вращения колеса мыши над PaintBox.


Vinum   (2008-05-21 07:54:00) [1]

Большое спасибо


Дмитрий К   (2008-05-21 00:12:00) [2]

program Project1;

uses
 Windows, KOL;

var Form, PB: PControl;

procedure FormMouseWheel(Dummy, Sender: PControl; var Mouse: TMouseEventData);
var zDelta: SmallInt; r:TRect; p: TPoint;
begin
 GetWindowRect(PB.Handle, r);
 GetCursorPos(p);
 if PointInRect(p, r) then
 begin
   zDelta := HiWord(Mouse.Shift);
   if zDelta < 0 then
   begin
     PB.Width := PB.Width - 10;
     PB.Height := PB.Height - 10;
   end
   else begin
     PB.Width := PB.Width + 10;
     PB.Height := PB.Height + 10;
   end;
 end;
end;

procedure PBPaint(Dummy, Sender: PControl; DC: HDC);
begin
 Sender.Canvas.FillRect(Sender.BoundsRect);
end;

begin
 Form := NewForm(nil, 'test');
 PB := NewPaintBox(Form);
 PB.Canvas.Brush.Color := clRed;
 PB.OnPaint := TOnPaint(MakeMethod(nil, @PBPaint));
 Form.OnMouseWheel := TOnMouse(MakeMethod(nil, @FormMouseWheel));

 Run(Form);
end.


Наверх

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