我已经成功地将文本发送到我使用 C++ 创建的自定义文本框,以及记事本、计算器和其他程序,所有这些程序都带有 1 个窗口和 1 个文本框。但是,我想将文本发送到另一个具有多个文本框并且也在选项卡中的程序。它的结构如下:
- 开放程序
- 从 2 个选项卡中进行选择:统计数据b.配置(其中包含文本框)
- 将 4 个文本框填入所需值
我尝试过winspy++,但没有成功,这是我一直在使用的简单代码。
#include <windows.h>
int main()
{
HWND hNote;
HWND hChild;
if (!(hNote=FindWindow("windowname",NULL)))
exit(1);
if (!(hChild=FindWindowEx(hNote,NULL,"EDIT",NULL)))
exit(2);
SendMessage(hChild,WM_SETTEXT,NULL,(LPARAM)"texttoadd");
return 0;
}
谁能帮助我如何解决这个问题?
所以问题是获取特定控件的句柄。例如,您可以使用以下方法来查找控件的句柄:
- 可以通过控件id来区分控件,然后使用获取DlgItem函数来获取其句柄。可以使用 Spy++ 或 InqSoft Windows Scanner 等工具找到控件 ID。
- MSDN 说可以通过父窗口内的点的坐标找到控件子窗口从点 , ChildWindowFromPointEx or 真实子窗口从点功能。
- 或者可以通过以下方式在父窗口中枚举所有控件枚举ChildWindows并且可以使用自定义规则找到合适的规则。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)