1

このスレッドによると: CreateWindow/CreateDialog からの HWND を別のスレッドから GetMessage することはできますか? 、メインスレッドのHWNDを使って別スレッドでGetMessageが使えないようです。

新しいスレッドから呼び出される GetMessage を使用して、編集テキスト内の値を取得しようとしているだけです。これを行うにはどのような方法がありますか?

4

1 に答える 1

1

実際にはまったく使用しない編集コントロールから値を取得したい場合GetMessageGetMessageはメッセージを受信するためのものですが、ウィンドウからテキストを取得するには、メッセージを送信する必要があります。つまり、 を使用しますSendMessage

送信するメッセージはWM_GETTEXT(前にWM_GETTEXTLENGTH) です。または、さらに簡単に、OS が提供するラッパー関数の 1 つを使用します。この例では、GetWindowTextまたはGetDlgItemText. それらはスレッドの境界を越えて (実際にはプロセスの境界を越えても) 正常に動作します。

于 2013-07-02T20:24:52.253 に答える