home *** CD-ROM | disk | FTP | other *** search
- unit MoveUnit1;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- StdCtrls;
-
- type
- TForm1 = class(TForm)
- Button1: TButton;
- procedure Button1MouseDown(Sender: TObject; Button: TMouseButton;
- Shift: TShiftState; X, Y: Integer);
- procedure Button1Click(Sender: TObject);
- procedure Button1MouseMove(Sender: TObject; Shift: TShiftState; X,
- Y: Integer);
- procedure FormCreate(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- Moving : boolean;
- end;
-
- var
- Form1: TForm1;
-
- implementation
-
- {$R *.DFM}
-
- procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
- Shift: TShiftState; X, Y: Integer);
- begin
- Moving := true;
- end;
-
- procedure TForm1.Button1Click(Sender: TObject);
- begin
- ShowMessage( 'You clicked me!' );
- Moving := false;
- end;
-
- procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X,
- Y: Integer);
- const
- SC_DragMove = $F012;
- begin
- if Moving then
- begin
- ReleaseCapture;
- Button1.perform(WM_SysCommand, SC_DragMove, 0 );
- Moving := false;
- end;
- end;
-
- procedure TForm1.FormCreate(Sender: TObject);
- begin
- Moving := false;
- end;
-
- end.
-