Aracılığıyla paylaş


Ayrı Bir Öğe için Resimleri Ayarlama

Genişletilmiş birleşik giriş kutusu öğesi tarafından kullanılan farklı görüntü türleri, COMBOBOXEXITEM yapısının iImage, iSelectedImage ve iOverlay üyelerindeki değerlere göre belirlenir. Her değer, denetimin ilişkili görüntü listesindeki bir görüntünün dizinidir. Varsayılan olarak, bu üyeler 0 olarak ayarlanır ve denetimin öğe için görüntü görüntülemesine neden olur. Görüntüleri belirli bir öğe için kullanmak istiyorsanız, birleşik giriş kutusu öğesini eklerken veya mevcut bir birleşik giriş kutusu öğesini değiştirerek yapıyı buna göre değiştirebilirsiniz.

Yeni Öğe için Görüntü Ayarlama

Yeni bir öğe ekliyseniz, iImage, iSelectedImage ve iOverlay yapısı üyelerini uygun değerlerle başlatın ve sonra öğeyi CComboBoxEx::InsertItem çağrısıyla ekleyin.

Aşağıdaki örnek, genişletilmiş birleşik giriş kutusu denetimine () yeni bir genişletilmiş birleşik giriş kutusu öğesi (cbim_comboEx) ekler ve üç görüntü durumunun tümü için dizinler sağlar:

COMBOBOXEXITEM     cbi = { 0 };
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);

Mevcut Bir Öğe için Görüntü Ayarlama

Mevcut bir öğeyi değiştiriyorsanız COMBOBOXEXITEM yapısının maske üyesiyle çalışmanız gerekir.

Varolan bir öğeyi görüntüleri kullanacak şekilde değiştirmek için

  1. COMBOBOXEXITEM yapısı bildirin ve maske veri üyesini değiştirmek istediğiniz değerlere ayarlayın.

  2. Bu yapıyı kullanarak CComboBoxEx::GetItem çağrısı yapın.

  3. Uygun değerleri kullanarak yeni döndürülen yapının mask, iImage ve iSelectedImage üyelerini değiştirin.

  4. Değiştirilen yapıyı geçirerek CComboBoxEx::SetItem çağrısı yapın.

Aşağıdaki örnek, üçüncü genişletilmiş birleşik giriş kutusu öğesinin seçili ve seçilmemiş görüntülerini değiştirerek bu yordamı gösterir:

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));

Ayrıca bkz.

CComboBoxEx Kullanma
Denetimler