質問

コンボボックス(C ++、Win32 API)のデフォルト動作を変更したい。編集コントロールに何かが入力されたときにコンボボックスをドロップダウンさせます。コンボボックスがリストの最初のマッチを検索し、それを選択し、選択した文字列を編集コントロールに入力するデフォルトの動作を避けたいです。 getmessage()でメッセージから自分でキューからキューから出して、それぞれの(lb_setcurselなど)メッセージをキャッチすることでこの動作を抑制できますか?

誰かがそれをする方法について別の考えを持っていますか?

ミシュベックに挨拶します

役に立ちましたか?

解決

おそらく実装したいと思うでしょう ウィンドウサブクラス化. 。これにより、独自のWNDProc関数をコンボボックスコントロールに挿入できます。コンボボックスコントロールは、コントロールのWNDProcが呼び出される前に呼び出されます。コントロールを取得したくないウィンドウメッセージをフィルタリング(およびドロップ)できます。

私は今、Windowsパーティションを起動していません。コンボボックスでSpy ++を実行して、実際に受信するメッセージを確認しています。私の推測では、wm_charをコンボボックスに受け取ってから除外したいと思います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top