用鼠标取得其他窗口句柄用鼠标取得其他窗口句柄
主题:用鼠标取得其他窗口句柄
发信人: delfan( )
整理人: teleme(2001-04-18 08:39:35) 站内信件
前一阵有个网友提的问题,好象一直都没有解决。今天翻看API的时候,看到SetCapTure,想起这个问题。在此先和那位网友说声对不起。 窗体上放置一个button 一个edit 代码如下,注意每次取之前都要先点一下button.
原理见程序中注释。
unit Unit1;
interface
uses
Messages SysUtils C...
用鼠标取得其他窗口句柄
主题:用鼠标取得其他窗口句柄
发信人: delfan( )
整理人: teleme(2001-04-18 08:39:35) 站内信件
前一阵有个网友提的问题,好象一直都没有解决。今天翻看API的时候,看到SetCapTure,想起这个问题。在此先和那位网友说声对不起。 窗体上放置一个button 一个edit 代码如下,注意每次取之前都要先点一下button.
原理见程序中注释。
unit Unit1;
interface
uses
Messages SysUtils Classes Graphics Controls Forms Di Windows
alogs
StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
setcapture(handle); // 设置捕获鼠标输入
end;
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X Y: Integer); var point : TPoint;
hwnd : THandle;
begin
point.x := x;
point.y := y;
point := ClientToScreen(point); // 客户区坐标转换到屏幕坐标
hwnd := WindowFromPoint(point); // 取鼠标点击的窗体句柄
ReleaseCapture; // 终止捕获鼠标输入
if hwnd=handle then edit1.text := '没有点击其他窗体~'
else
edit1.Text := inttostr(hwnd); end;
end.
----
o
O
/-----||---\
不是俺家...... /------------\
| ___ 日 |
|_|_|______|
VvVvVv
,
本文档为【用鼠标取得其他窗口句柄】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。