请问当我鼠标离开Form1的时候就让Form1自动关闭,这样的功能我要怎么做?
我查了CM_MOUSEENTER; CM_MOUSELEAVE;这两个函数后我还是搞不明白要怎么写.要把他写在窗体的那个事件里面.请各位大哥赐教
我查了CM_MOUSEENTER; CM_MOUSELEAVE;这两个函数后我还是搞不明白要怎么写.要把他写在窗体的那个事件里面.请各位大哥赐教
解决方案 »
- 有关delphi 整形强转枚举型
- 在DELPHI中如何调用迅雷的接口
- 再送100分!共200分!一句Insert into...语句执行没问题,二句以上执行有问题。请高手指点!
- 下载问题
- 请问如何查询一个table中,中间的某一段纪录?????
- 如何将MEMO中的文件保存为TXT文件,可否给个例子
- listview 的双击事件问题????
- 各路大仙给小弟推荐几个有关delphi的好站、好书(最好有download)的。小弟30分奉上!
- 谁有InstallShield Express 3.51 的安装密码?
- 这条关联的SQL语句怎样写
- N个Form的大小等属性相同,不想在设计时修改,想用写个自定义的函数来调用,问怎么实现 ?
- 在delphi中如何将GetLastError的具体错误转换成字符串
Y: Integer);
begin
if ( form1.top+form1.Height )> y then
close;
end;
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Grids, DBGrids;type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
ADOQuery1: TADOTable;
private
{ Private declarations }
procedure DoMouseLeave(var Msg: TMessage); message CM_MOUSELEAVE;//这个是鼠标离开的消息,要定义消息处理过程(函数)
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}{ TForm1 }procedure TForm1.DoMouseLeave(var Msg: TMessage);
begin
inherited;
Close;
end;end.
自己判断鼠标所在的位置.
procedure TForm1.Timer1Timer(Sender: TObject);
var
pos:Tpoint;
gethandle:THandle;
begin
GetCursorPos(pos);
gethandle:=GetAncestor(WindowFromPoint(pos), GA_ROOT);
if per_handle<>self.Handle then
close;
end;