Консультация № 139374
06.06.2008, 22:30
0.00 руб.
0 1 1
Здравствуйте!Помогите мне пожалуйста.На форме SpeedButton, нужен обработчик onMouseDown.
При нажатой мышке надо потаскать SpeedButton по форме до нужного места. При отжатой мышке SpeedButton должен остаться на том месте,куда его поместили.

Обсуждение

Неизвестный
06.06.2008, 22:53
общий
это ответ
Здравствуйте, Зотов.Г.А!

Код в приложении.
Удачи.

Приложение:
var FMouseDown: boolean; FX, FY, FLeft, FTop: integer;procedure TForm1.SpeedButton1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin FMouseDown:=true; With SpeedButton1.ClientToScreen(Point(X, Y)) do begin FX:=X; FY:=Y; FLeft:=SpeedButton1.Left; FTop:=SpeedButton1.Top; end;end;procedure TForm1.SpeedButton1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);begin if FMouseDown then With SpeedButton1, SpeedButton1.ClientToScreen(Point(X, Y)) do SetBounds(FLeft-FX+X, FTop-FY+Y, Width, Height);end;procedure TForm1.SpeedButton1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin FMouseDown:=false;end;
Форма ответа