根据这个帖子:Can the HWND from CreateWindow/CreateDialog be GetMessage'd from another thread?,我似乎无法使用主线程的HWND在另一个线程中使用GetMessage。
我只是试图使用从新线程调用的GetMessage来获取edittext中的值。我有什么方法可以做到这一点?
答案 0 :(得分:1)
如果您想从编辑控件中获取值,则实际上根本不使用GetMessage
。 GetMessage
用于接收消息,但要从窗口获取文本,您必须发送消息 - 即您使用SendMessage
。< / p>
要发送的邮件是WM_GETTEXT
(前面是WM_GETTEXTLENGTH
)。或者更简单,使用操作系统为您提供的其中一个包装函数 - 在本例中为GetWindowText
或GetDlgItemText
。它们可以很好地跨越线程边界(事实上甚至跨越进程边界)。