【发布时间】:2013-07-02 20:17:22
【问题描述】:
根据这个线程:Can the HWND from CreateWindow/CreateDialog be GetMessage'd from another thread?,看来我不能在另一个线程中使用主线程的 HWND 使用 GetMessage。
我只是试图使用从新线程调用的 GetMessage 来获取编辑文本中的值。有什么方法可以做到这一点?
【问题讨论】:
标签: winapi getmessage
根据这个线程:Can the HWND from CreateWindow/CreateDialog be GetMessage'd from another thread?,看来我不能在另一个线程中使用主线程的 HWND 使用 GetMessage。
我只是试图使用从新线程调用的 GetMessage 来获取编辑文本中的值。有什么方法可以做到这一点?
【问题讨论】:
标签: winapi getmessage
如果您想从编辑控件中获取值,您实际上根本不使用GetMessage。 GetMessage 用于接收消息,但要从窗口中获取文本,您必须发送消息 - 即您使用 SendMessage。
要发送的消息是WM_GETTEXT(前面是WM_GETTEXTLENGTH)。或者更简单,使用操作系统为您提供的包装函数之一 - 在本例中为 GetWindowText 或 GetDlgItemText。它们可以很好地跨线程边界工作(实际上甚至可以跨进程边界)。
【讨论】: