25. april 2003 - 17:29
#2
tjaa, man har et billed på sin form... når man så holder venstre museknap nede over det, kan man flytte rundt på det :)
25. april 2003 - 17:37
#3
{This example shows how to move components at runtime, dragging it.
You are able to see the components
move as you drag them.
Attach the Control event handlers (ControlMouseDown,...)
to all components you want to move.
type
TForm1 = class(TForm)
Image1: TImage;
procedure ControlMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure ControlMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure ControlMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
downX,
downY: Integer;
dragging: Boolean;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
Type
TMoveCracker = Class(TControl);
procedure TForm1.ControlMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
downX:= X;
downY:= Y;
dragging := TRue;
TMoveCracker(Sender).MouseCapture := True;
end;
procedure TForm1.ControlMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
If dragging Then
with Sender As TControl Do
Begin
Left := X-downX+Left;
Top := Y-downY+Top;
End;
end;
procedure TForm1.ControlMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
If dragging then
Begin
dragging := False;
TMoveCracker(Sender).MouseCapture := False;
End;
end;
Stoney