首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

DELPHI怎么捕获鼠标在本窗体以外范围的点击件事

2012-04-10 
DELPHI如何捕获鼠标在本窗体以外范围的点击件事?如题。主要目的是,当鼠标在本窗体以外的任意范围外点了左键

DELPHI如何捕获鼠标在本窗体以外范围的点击件事?
如题。
主要目的是,当鼠标在本窗体以外的任意范围外点了左键或右键,即关闭本窗口。

[解决办法]
处理WM_CAPTURECHANGED
[解决办法]
全局鼠标钩子笑而不语中。
[解决办法]
做一个 dll 用来hook。。
[解决办法]
鼠标消息钩子啊
[解决办法]
没必要用钩子,你在窗体失去焦点事件中写一句close即可。
[解决办法]
楼主现在做delphi的已经不多了,你只给这点分显然是对问题不重要,我回答 的动力都没有了。

算了,不跟你计较了,代码如下:



unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;

type
TForm1 = class(TForm)
//声明处:
procedure MyProcessMsg( var message:TWMACTIVATEAPP); message WM_ACTIVATEAPP;
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.MyProcessMsg(var message: TWMACTIVATEAPP);
begin
if Message.Active=False then close;
end;

end.

热点排行