【发布时间】:2014-01-20 11:13:16
【问题描述】:
我有问题。我正在使用 C++ 在 Win32 中开发一个应用程序,该应用程序在其他范围内自动化外部应用程序中的一些用户输入过程,以便用户准备好操作。 特别是我想使用 Win32 API 在 Qt QWidget 控件中填充一些文本。我用纯 C 语言编写了一个 DLL 来完成这项任务。我在 MFC 应用程序上对其进行了测试,效果很好。 无论如何,我无法让它为 Qt QWidget 控件工作。 我能够通过 EnumChildWindows 函数(存储在 struct Field 中)获得正确的句柄。
SendMessage(Field.hFound,WM_SETTEXT,(WPARAM)NULL,(LPARAM)_T("bla bla bla"));
但是 SendMessage 似乎不起作用,因为控件(很可能是 QLineedit)可能支持其他消息来完成这项工作。 这些事件有什么规范吗,我用谷歌搜索了很多,但找不到合适的东西。 让这段代码工作的最直接的方法是什么?我可以使用 Qt 的事件表映射吗?我是否必须使用一些 Qt 标头并将其链接到 DLL(这可能是由于许可的问题)?
提前致谢。
【问题讨论】:
-
已解决发布 WM_CHAR 事件。