16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"マウスのクリックを無効にする"
この発言に対し以下のコメントが寄せられています
#00360 凛 さん マウスのクリックを無効にする
{
Formにラベルとボタン2つを貼り付けて、マウスでボタン1をクリックしても
無視します、ボタン2をクリックするとラベルに'Button2 Click'と表示します
}
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private 宣言 }
procedure AppMessage( var Msg: Tmsg; var Handled: boolean );
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMessage := AppMessage;
end;
procedure TForm1.AppMessage( var Msg: Tmsg; var Handled: boolean );
begin
if Msg.hwnd = Button1.Handle then
begin
case Msg.message of
// マウスのボタンの左側
WM_LBUTTONDOWN :
Handled := true;
WM_LBUTTONUP :
Handled := true;
WM_LBUTTONDBLCLK :
Handled := true;
// マウスのボタンの右側
WM_RBUTTONDOWN :
Handled := true;
WM_RBUTTONUP :
Handled := true;
WM_RBUTTONDBLCLK :
Handled := true;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption := 'Button1 Click';
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Label1.Caption := 'Button2 Click';
end;
end.
Original document by 青井 勝茂 氏 ID:(JBD00012)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|