procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND, SC_MOVE + 1, 0);
end;
Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND, SC_MOVE + 1, 0);
end;
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;type
TForm1 = class(TForm)
Panel1: TPanel;
Button1: TButton;
procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
procedure WMCOMMAND(var Msg: TWMCOMMAND); message WM_COMMAND;
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND, SC_MOVE + 1, 0);
end;procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button = mbright then
TrackPopupMenuEx(GetSystemMenu(Handle, False),
TPM_VERTICAL, Mouse.CursorPos.X, Mouse.CursorPos.Y, Handle, nil);
end;procedure TForm1.WMCOMMAND(var Msg: TWMCOMMAND);
begin
Perform(WM_SYSCOMMAND, Msg.ItemID, 0);
end;end.
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button = mbright then
TrackPopupMenuEx(GetSystemMenu(Application.Handle, False),
TPM_VERTICAL, Mouse.CursorPos.X, Mouse.CursorPos.Y, Handle, nil);
end;procedure TForm1.WMCOMMAND(var Msg: TWMCOMMAND);
begin
inherited;
Perform(WM_SYSCOMMAND, Msg.ItemID, 0);
end;