コンボボックスのリスト部分が開いているかどうかを取得するには?

解決


bagabond  2008-03-04 18:44:41  No: 139142

WindowsXPとVB6で開発していますが、コンボボックスのリスト部分が開いているかどうか取得するにはSendMessage関数でCB_GETDROPPEDSTATE定数を送信せよとの説明が、MSDNに記述されていますが、定数の値が解りません。
サンプルプログラムに習ってのWM_USER=&H400、CB_GETDROPPEDSTATE=WM_USER+23で行いましたが正常に動作しません。この値は16ビット用のAPIの定数ではないかと思います。宜しくお願いします。


Blue  2008-03-04 18:59:23  No: 139143

http://support.microsoft.com/kb/124058/ja
のことですか?

<引用>
この資料は以下の製品について記述したものです。
&#8226; Microsoft Visual Basic 2.0 Standard Edition 
&#8226; Microsoft Visual Basic 3.0 Professional Edition 
&#8226; Microsoft Visual Basic 2.0 Professional Edition 
</引用>
となっていますが確認しましたか?

Win32用の定数は

Private Const CB_GETDROPPEDSTATE = &H157

でしょう。
VB6付属のAPIビューアあたりで確認できないかなぁ。


bagabond  2008-03-05 01:18:13  No: 139144

Blueさん。解決しました。ご指摘の通り、私が参照したサンプルプログラムは古いバージョンのものでした。またAPIビューアで定数の値も確認できました。ありがとうございます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加