gpt4 book ai didi

windows - 如何从 Handle 中检索组件名称?

转载 作者:行者123 更新时间:2023-12-03 18:17:56 32 4
gpt4 key购买 nike

在我的应用程序中,我通过 SetWindowsHookEx 捕获所有事件,当用户单击按钮时,我检索一个 hwnd,我猜它是 Tbutton 的句柄。

typedef struct tagMSG {
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
DWORD lPrivate;
} MSG, *P

现在我如何从这个 hwnd 中检索按钮名称(或者更好的是表示按钮的 Delphi 对象?)。

也许我还可以通过 POINT pt; 检索组件?

最佳答案

您可以使用 FindControl ,如果窗口是由属于调用该函数的同一 VCL 实例的控件创建的,它将检索对象实例。由于 NameTComponent 中发布,因此无论实际类类型如何,您都可以访问该属性。

每个带窗口的 VCL 控件都有其对象实例地址存储在 API 窗口的 property list 中。 ,以及包含模块地址、进程 ID、线程 ID 信息的属性。这使得 VCL 可以从它创建的窗口回溯控件。

关于windows - 如何从 Handle 中检索组件名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59365613/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com