1

根据这个线程:CreateWindow/CreateDialog 中的 HWND 可以从另一个线程中获取消息吗?,看来我不能使用主线程的HWND在另一个线程中使用GetMessage。

我只是试图使用从新线程调用的 GetMessage 来获取编辑文本中的值。我有什么方法可以做到这一点?

4

1 回答 1

1

如果您想从根本不使用的编辑控件中获取值GetMessageGetMessage用于接收消息,但要从窗口获取文本,您必须向它发送消息 - 即您使用SendMessage.

要发送的消息是WM_GETTEXT(前面有WM_GETTEXTLENGTH)。或者更简单,使用操作系统为您提供的包装器功能之一 - 在本例中GetWindowTextGetDlgItemText. 它们可以很好地跨线程边界工作(实际上甚至可以跨进程边界)。

于 2013-07-02T20:24:52.253 回答