CComboBox

CComboBoxクラスは Windows コンボ ボックスの機能を提供します。

コンボ ボックスは、スタティック コントロールまたはエディット コントロールと組み合わせたリスト ボックスで構成されています。コントロールのリスト ボックス部分のすべての回でが表示されることがあります。 またはユーザー コントロールの横のドロップダウン矢印を選択したときだけドロップダウンがあります。

リスト ボックスで現在選択されている項目 (もしあれば) で静的表示されます。 またはコントロールを編集します。また、コンボ ボックス ドロップダウン リスト スタイルがある場合は、ユーザーの最初の文字のいずれかの一覧で、入力することができ、[リスト] ボックスで、表示されている場合は、次のアイテムが最初の文字を強調します。

次の表は、3 つのコンボ ボックススタイル.nbsp を比較します。(&N);

スタイル リスト ボックスが表示されているとき? 静的または編集のコントロール?
単純です 常に 編集
ドロップダウン ドロップダウンされたとき 編集
ドロップ ダウン リスト ドロップダウンされたとき 静的

CComboBoxオブジェクトは、ダイアログ テンプレートからまたは、コードで直接作成できます。両方のケースでは、まずCComboBox CComboBoxオブジェクトを作成するコンス トラクターを呼び出す;コントロールを作成し、 CComboBoxオブジェクトにアタッチするには、 Createメンバー関数を呼び出す。

コンボ ボックスで親 (通常はCDialogの派生クラス) に送信される Windows の通知メッセージを処理する場合は、親クラスに各メッセージをメッセージ マップ エントリとメッセージ ハンドラー メンバー関数を追加します。

各メッセージ マップ エントリを次の形式します。:

ON_(の通知id,memberFxn

ここで、通知とmemberFxnを送信するコンボ ボックス コントロールの子ウィンドウ IDの idを指定します、通知を処理するために書かれている親メンバー関数の名前です。

親の関数プロトタイプは次のとおりです。:

afx_msg void memberFxn( );

特定の通知が送信される順序は予測できません。特に、 CBN_SELCHANGE通知の前に、または後にCBN_CLOSEUP通知発生します。

潜在的なメッセージ マップ エントリを次に示します:

内] ダイアログ ボックス (ダイアログ リソースを使って) CComboBoxオブジェクトを作成する場合は、ユーザー ダイアログ ボックスを閉じたときCComboBoxオブジェクトに自動的に破棄されます。

別のウィンドウ オブジェクト内のCComboBoxオブジェクトを埋め込む場合は、それを破壊する必要はありません。スタックにCComboBoxオブジェクトを作成する場合は、それが自動的に破棄されます。新しい関数を使用して、ヒープにCComboBoxオブジェクトを作成する場合を削除Windows コンボ ボックスが破棄されると破棄するオブジェクトを呼び出す必要があります。

#include lt;afxwin.h>

クラス メンバーの |nbsp;基本クラス|階層図(&N)

サンプル特価; MFC サンプル CTRLBARS(&N)

参照特価;CWndCButtonCEditCListBoxCScrollBarCStaticCDialog(&N)

Index