MFC Extend CcomboBox

4850 ワード

ComboBox Exは、CComboBoxと継承しますが、CComboBoxの次の関数は使用できません:(使用時にASSERT断言に失敗しました)
_AFXCMN_INLINE int CComboBoxEx::Dir(UINT attr, LPCTSTR lpszWildCard)
_AFXCMN_INLINE int CComboBoxEx::FindString(int nIndexStart, LPCTSTR lpszFind) const _AFXCMN_INLINE int CComboBoxEx::AddString(LPCTSTR lpszString) _AFXCMN_INLINE BOOL CComboBoxEx::SetEditSel(int nStartChar, int nEndChar) _AFXCMN_INLINE int CComboBoxEx::InsertString(int nIndex, LPCTSTR lpszString)
  Extended Combo Boxの機能はCombo Boxより少し多い.選択肢の前にアイコンを付ける機能がある.
                まずExtended Combo Boxコントロールを追加し、変数cbBoxEを追加します.
                CImageList* pImageList;     //特殊な配列に相当しますが、画像が保存されています.
                pImageList = new CImageList();
                pImageList->Create(32, 32, ILC_COLOR32, 0, 4);//
                //リソースにbmpピクチャを追加します.idはIDB_です.BITMAP1
                CBitmap bmp;
                bmp.LoadBitmap(IDB_BITMAP1);//リソース内のピクチャのロード
                pImageList->Add(&bmp, RGB(0, 0, 0));//イメージリストに画像を追加
                cbBoxE.SetImageList(pImageList);
                COMBOBOXEXITEM insItem;//画像オプションを追加するときのパラメータです.これは構造体で、次は変数の初期化です.
                insItem.mask = CBEIF_IMAGE|CBEIF_TEXT;
                insItem.iItem=0;
                insItem.iImage=0;
                insItem.pszText=_T("Line 1");
                cbBoxE.InsertItem(&insItem);//コントロールにオプションを追加し、オプションの前に画像を表示します.
 
  
 
  
1.ON_CBN_SELCHANGE                      ,           。テキスト    GetLBText           。    GetWindowText  。    :    GetWindowText           。
2.ON_CBN_EDITCHANGE                     。   CBN_EDITUPDATE  ,     Windows  スクリーン     。   CBS_DROPDOWNLIST コンボボックス    ,ON_CBN_EDITCHANGE ON_CBN_SELECTCHANGE      。    :    GetWindowText           。
3.ON_CBN_SELENDOK          ,    ENTER ,         ,     コンボボックス   。      CBN_CLOSEUP    ,                。      CBN_CLOSEUP    ,    CBN_SELENDCANCEL CBN_SEL-ENDOK  (     CBS_SIMPLE コンボボックス)。    :ON_CBN_SELENDOK ON_CBN_EDITCHANGE      。    :    GetCurSel       ,  GetLBText       ,  GetWindowText       ,          ,        Edit         。
3.   CComboBox::SetCurSel()           CBN_SELCHANGE  ,    SetCurSel()   CBN_SELCHANGE        。  SetCurSel()      CComboBox      ,        GetCurSel()    。    UpdateData   。
4.  DropDownList          CBN_EDITCHANGE    (                    ),                    CBN_EDITCHANGE  ( ON_CBN_EDITCHANGE  )。