다음을 통해 공유


개별 항목에 대 한 이미지 설정

다양 한 유형의 확장된 combo box 항목으로 사용 되는 이미지의 값에 의해 결정 됩니다의 iImage, iSelectedImage, 및 iOverlay 의 멤버는 COMBOBOXEXITEM 구조.각 값에 연결 된 이미지 목록 컨트롤에에서 있는 이미지의 인덱스입니다.기본적으로 이러한 멤버는 컨트롤에 없는 항목에 대 한 이미지를 표시 하려면 0으로 설정 됩니다.특정 항목에 대 한 이미지를 사용 하려는 경우 구조에 따라 콤보 상자 항목을 삽입할 때나 기존 콤보 상자 항목을 수정 하 여 수정 하면 됩니다.

새 항목에 대 한 이미지 설정

새 항목을 삽입 하는 경우 초기화는 iImage, iSelectedImage, 및 iOverlay 구조체 멤버를 적절 한 값을 사용 하 고 다음 항목에 대 한 호출을 삽입 CComboBoxEx::InsertItem.

새 확장된 콤보 상자 항목을 삽입 하는 예제 (cbi) 확장된 combo box 컨트롤에 (m_comboEx), 세 상태 이미지의 인덱스를 제공 합니다.

COMBOBOXEXITEM     cbi = {0};
CString            str;
int                nItem;

cbi.mask = CBEIF_IMAGE | CBEIF_INDENT | CBEIF_OVERLAY |
    CBEIF_SELECTEDIMAGE | CBEIF_TEXT;

cbi.iItem = 0;
cbi.pszText = _T("Item 0");
cbi.iImage = 0;
cbi.iSelectedImage = 1;
cbi.iOverlay = 2;
cbi.iIndent = (0 & 0x03);   //Set indentation according
                     //to item position

nItem = m_ComboBoxEx.InsertItem(&cbi);
ASSERT(nItem == 0);

기존 항목에 대 한 이미지 설정

기존 항목을 수정 하는 경우 작업할 필요가 마스크 의 멤버는 COMBOBOXEXITEM 구조.

이미지를 사용 하려면 기존 항목을 수정 하려면

  1. 선언 된 COMBOBOXEXITEM 구조 및 설정의 마스크 데이터 멤버의 값에 수정에 관심.

  2. 이 구조를 사용 하 여 호출을 확인 CComboBoxEx::GetItem.

  3. 수정에 마스크, iImage, 및 iSelectedImage 적절 한 값을 사용 하 여 멤버를 새로 반환 된 구조.

  4. 호출 CComboBoxEx::SetItem, passing 수정 된 구조에서입니다.

다음 예제에서는 셋째 확장된 combo box 항목의 선택 및 선택 되지 않은 이미지를 바꾸어이 절차를 보여 줍니다.

COMBOBOXEXITEM     cbi = {0};
int                iImageTemp;

cbi.mask = CBEIF_IMAGE | CBEIF_SELECTEDIMAGE;
cbi.iItem = 0;
m_ComboBoxEx.GetItem(&cbi);

iImageTemp = cbi.iImage;
cbi.iImage = cbi.iSelectedImage;
cbi.iSelectedImage = iImageTemp;
VERIFY(m_ComboBoxEx.SetItem(&cbi));

참고 항목

참조

CComboBoxEx 사용

개념

컨트롤 (MFC)