(菜鸟级问题)怎么实现用Label控件拖动窗口?拖动完了不能激发OnClick事件 在程序里做了一个标签,单击弹出菜单..现在问题是我想实现:拖动此标签等于拖动窗口,且释放鼠标时不弹出菜单..怎么做?这里大虾如云,会有人救我的!我相信! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 鼠标点中LABEL触发拖动事件,句柄是FORM不是LABEL,否则动不了 unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Label1: TLabel; procedure Label1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure Label1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure FormCreate(Sender: TObject); procedure Label1Click(Sender: TObject); procedure Label1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); private { Private declarations } bDrag : Boolean; bDown : boolean; public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Label1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);const SC_DRAGMOVE:Longint=$F012;begin if bDown then begin ReleaseCapture; SendMessage(Self.Handle, WM_SYSCOMMAND, SC_DRAGMOVE, 0); bDrag:= TRUE; end;end;procedure TForm1.Label1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin bDrag:= false; bDown:= false;end;procedure TForm1.FormCreate(Sender: TObject);begin bDown:= false; bDrag:= false;end;procedure TForm1.Label1Click(Sender: TObject);begin if not bDrag then begin // 显示菜单吧 ShowMessage('aaa'); end;end;procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin bDown:= true;end;end. 请问如何调用本地邮件客户端(FOXMAIL/OUTLOOK/OUTLOOK EXPRESS)发送邮件? form刷新的问题~ 我的安装制作遇到问题了,ADO+SEVER SQL 2000 有没有可以像日记簿那样可以输入文本的日历控件? 关于异常的一个问题 关于动态查询的问题,急急急! 我怎么统计网格(DB-GRID)中的记录数?(在线给分) 哪里有Asp pack下载.我怎么找不到那....谢谢各位了... 哪位高手能帮我看一下这个程序的问题所在? 又一个菜问题!! 如何熟悉一个ERP系统 吗的,碰到借钱不还的同学
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Label1: TLabel;
procedure Label1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Label1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormCreate(Sender: TObject);
procedure Label1Click(Sender: TObject);
procedure Label1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
bDrag : Boolean;
bDown : boolean;
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Label1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
const
SC_DRAGMOVE:Longint=$F012;
begin
if bDown then
begin
ReleaseCapture;
SendMessage(Self.Handle, WM_SYSCOMMAND, SC_DRAGMOVE, 0); bDrag:= TRUE;
end;
end;procedure TForm1.Label1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
bDrag:= false;
bDown:= false;
end;procedure TForm1.FormCreate(Sender: TObject);
begin
bDown:= false;
bDrag:= false;
end;procedure TForm1.Label1Click(Sender: TObject);
begin
if not bDrag then
begin
// 显示菜单吧
ShowMessage('aaa');
end;
end;procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
bDown:= true;
end;end.