vc6中在CComboBoxEx中使用图像列表
下拉框中什么也没有
IDC_COMBO1是普通的组合框 (Combo Box) 控件
不是扩展组合框 (Extended Combo Box) 控件
看到vc技术内幕第五版中的一个事例可以,忘大虾们不吝赐教
CComboBoxEx *pComboBoxEx = (CComboBoxEx *)GetDlgItem(IDC_COMBO1); m_ImageList.Create(50, 50, ILC_COLORDDB|ILC_MASK, 20, 1); CBitmap bitmap;
HBITMAP hBitmap;
for (int i=0; i<10; i++)
{
hBitmap = (HBITMAP)LoadImage(NULL,_T("d:\\1.bmp"),IMAGE_BITMAP,0,0,
LR_CREATEDIBSECTION|LR_DEFAULTSIZE|LR_LOADFROMFILE);

bitmap.Attach(hBitmap);
m_ImageList.Add(&bitmap, RGB(255,255,0));
bitmap.DeleteObject();
} COMBOBOXEXITEM cbi;
cbi.mask = CBEIF_IMAGE|CBEIF_SELECTEDIMAGE|CBEIF_INDENT;
CString strTemp;
int nBitmapCount = 0;
for (int nCount = 0;nCount < 3;nCount++)
{
cbi.iItem = nCount;
cbi.pszText = (LPTSTR)(LPCTSTR)strTemp;
cbi.cchTextMax = 256;
pComboBoxEx->GetItem(&cbi);
cbi.iImage = nBitmapCount++;
cbi.iSelectedImage = nBitmapCount++;
cbi.iIndent = (nCount & 0x03);
pComboBoxEx->SetItem(&cbi);

}

解决方案 »

  1.   

    请大侠们帮忙查看错误在哪 最好写个例子发到偶邮箱[email protected] 谢谢啦
      

  2.   

    先帮楼主顶一下,一会试一下,你是不是那个 Combo Box 控件,大小太小了啊?导致看不到下拉框的内容啊?你在那个控件那里,点击一下那个向下的箭头,然后会出来个方框,你把那个方框的大小拖放改变,变大一点,试试,,,不知道是不是这原因
      

  3.   


    我给你找了个例子,不过是从资源载入 ICON 来实现图像列表的,你修改一下,应该可以实现从磁盘载入bmp图像,应该就能满足你的要求了。
     
    例子已经发到您的邮箱了。
      

  4.   

    不好意思楼主,我后来修改了下发给您的那个例子,可以实现从磁盘读取bmp图像作为列表的图像,但是,那个控件 是 Extended Combo Box ,而不是普通的 Combo Box,、、、、、、囧楼主一定是要在 普通的 Combo Box 控件上实现么?不能用  Extended Combo Box 控件么?那估计得重新画显示的列表框和列表内容了吧
      

  5.   

    CComboBoxEx控件使用示例
      

  6.   

    http://blog.csdn.net/sendy888/archive/2007/08/01/1720794.aspx