17-06-2020, Saat: 17:22
Merhaba,
TImage nesnesini taşımak için aşağıdaki kodları kullanıyorum.
Kısmen güzel çalışıyor fakat bazen anlam veremediğim durumlar ortaya çıkıyor. Taşıdığım TImage taşıma anında bir anda formun başka tarafına gidiyor.
Birde yapamadığım şey TImage TLayout içinde bu TLayout dışına çıkmamasını nasıl sağlarım? veya başka yöntemlede nasıl yapabilirim?
TImage nesnesini taşımak için aşağıdaki kodları kullanıyorum.
Kısmen güzel çalışıyor fakat bazen anlam veremediğim durumlar ortaya çıkıyor. Taşıdığım TImage taşıma anında bir anda formun başka tarafına gidiyor.
Birde yapamadığım şey TImage TLayout içinde bu TLayout dışına çıkmamasını nasıl sağlarım? veya başka yöntemlede nasıl yapabilirim?
var ImageStartDragPos: TPointF; ImageDragging: Boolean; procedure TMainForm.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single); begin if (ssleft in Shift) then begin ImageStartDragPos := ClientToScreen(Point(Round(X), Round(Y))); ImageDragging := True; end; end; procedure TMainForm.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Single); begin if ImageDragging then begin Imag1.Position.Point := ScreenToClient(ClientToScreen(Image1.Position.Point + ClientToScreen(Point(Round(X), Round(Y))) - ImageStartDragPos)); end; end; procedure TMainForm.Image1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single); begin ImageDragging := False; end;