var
Ret :Integer; //作成した領域のハンドル
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.Width :=Button1.Width;
Form1.Height :=Button1.Height;
//ボタンの大きさの領域を作成
Ret :=CreateRectRgn(10,10,Button1.width,Button1.Height);
//Formに新しい領域を設定する
SetWindowRgn(Form1.Handle,Ret,True)
;
end;
procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift:TShiftState; X, Y: Integer);
begin
//マウス左ボタンが押されているとき
If ssLeft in
Shift then
begin
//マウスキャプチャを解放する
ReleaseCapture;
//Form1をドラッグせよという命令を送る
SendMessage(Form1.Handle, WM_NCLBUTTONDOWN, HTCAPTION,0);
end;
//マウス右ボタンが押されているとき
If ssRight in Shift then
begin
//オブジェクトを削除する
DeleteObject(Ret)
;
//終了
Close;
end;
end;
|