SendMessageの第1引数

[戻る]
たまごっち 2002/01/18(金) 14:11:53
ボタンが1つだけあるウインドウです。
アプリ起動時に、ボタンをクリックしことにさせるには
どうしたらいいんですか?

ボタンのメニューIDは100です。

case WM_CREATE:
  SendMessage(hWnd, WM_COMMAND, MAKELPARAM(100, 1), NULL);

分からないのがSendMessageの第1引数です。ここに書いたように
hWndにするべきか、そのチャイルドのhBtnにするべきかを
教えてください。

EIJI 2002/01/18(金) 14:28:42
PostMessage( ダイアログのhWnd, WM_COMMAND, MAKEWPARAM(ボタンのID,BN_CLICKED), ボタンのhWnd );
でどうでしょうか?
SendMessageじゃだめな気がします。

たまごっち 2002/01/18(金) 14:45:50
これを書いた後、実験を始めて、たぶんタイミングの問題
だと思ったけど、SendMessageじゃだめでした。
それで、case SIZE に変更して実験していたところでした。
PostMessageに変更するのもいいかもしれませんね。
ありがとうございます。

ボタンの場合はhWndで動作し、ボタン自体のhBtnでは動作しませんでした。
エディットボックスならhWndでもhEdtでも動作したから
どっちがいいのか聞こうと思ってここに書きました。
もう一度エディットボックスを実験してみます。

たまごっち 2002/01/18(金) 15:00:26
[[解決]]
勘違いでした。
エディットボックスの場合もSendMessageの第1引数は
親ウインドウのハンドルであるhWndを指定しないと動作しませんでした。

ありがとうございました。

古いスレッドには追加発言できません。