2

コンボボックス(c ++、win32 api)のデフォルトの動作を変更したい。編集コントロールに何かが入力されたときにコンボボックスをドロップダウンさせますコンボボックスがリスト内の最初の一致を検索して選択し、選択した文字列を編集コントロールに入力するというデフォルトの動作を避けたいです。GetMessage()を使用して、メッセージキューからそれぞれの(LB_SETCURSELなど)メッセージをキャッチすることで、この動作を抑制できますか?

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

ミヒベックに挨拶

4

1 に答える 1

1

Windowサブクラス化を実装することをお勧めします。これにより、コントロール自体のWndProcが呼び出される前に呼び出されるコンボボックスコントロールに独自のWndProc関数を挿入できます。コントロールに取得させたくないウィンドウメッセージを除外(および削除)することができます。

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

于 2011-10-18T08:33:20.757 に答える