イメージリストをサポートしているコンボボックスのことです。今回はこの使い方を検討します。次に使用するビットマップを示します。次に、今回のコードを示します。ウインドウスタイルにWC_COMBOBOXEXを指定します。第2引数にビットマップのファイル名、第3引数にイメージの幅、第5引数に透過色を指定します。取得したイメージリストは、CBEM_SETIMAGELISTで拡張コンボボックスに設定します。アイテムの追加は、COMBOBOXEXITEM構造体を初期化し、これをCBEM_INSERTITEMに指定することで行います。CBEIF_TEXTを指定した場合は、アイテムの名前を表すpszTextを初期化できます。iImageとiSelectedImageを初期化できます。iImageは通常時、iSelectedImageはアイテムの選択時に参照されます。iItemは、アイテムのインデックスを指定します。拡張コンボボックスは、通常のコンボボックスと比べてEnterキーの押下を検出しやすくなっています。拡張コンボボックスの場合はWM_NOTIFYとして通知されます。これを処理する例を次に示します。lParam);}ウインドウスタイルにCBS_DROPDOWNを指定しているため、拡張コンボボックスのエディットコントロールを編集することができます。NMCBEENDEDIT構造体のiWhyがCBENF_RETURNである場合は、Enterキーによる編集の終了であると分かります。これらの条件がそろった場合にEnterキーが押されたとみなすことができます。具体的に何を行うかは自由ですが、上記では入力された文字列を拡張コンボボックスに追加しています。これは設定されているフォントの問題です。次のコードを実行すれば、拡張コンボボックスの大きさが通常のコンボボックスと同一になります。0);WM_SETFONTは、第3引数のフォントをコントロールに設定するメッセージです。GetStockObject(SYSTEM_FONT)で取得できるフォントは、通常のコンボボックスなどで使用されています。