(1)新建一个基于对话框的应用程序
(2)在对话框上添加添加一个扩展组合框控件,添加CcomboBoxEx类成员变量m_Combo
(3)在头文件中声明一个图像列表对象CImageList m_ImageList;
(4)在资源视图中导入7个icon类型的图
(5)主程序代码如下:
BOOL CMy2_073Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
……
// TODO: Add extra initialization here
CString str[]={"钱夫人","小丹尼","卡卡罗特","琪琪","特兰克斯","贝吉塔","天津饭"};
m_ImageList.Create(16,16,ILC_COLOR24|ILC_MASK,1,0); //创建列表视图窗口
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON1)); //向图像列表中添加图标
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON2)); //向图像列表中添加图标
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON3)); //向图像列表中添加图标
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON4)); //向图像列表中添加图标
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON5)); //向图像列表中添加图标
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON6)); //向图像列表中添加图标
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_ICON7)); //向图像列表中添加图标
m_Combo.SetImageList(&m_ImageList);
for(int i=0;i<7;i++)
{
COMBOBOXEXITEM cbi;
cbi.mask = CBEIF_IMAGE|CBEIF_INDENT|CBEIF_OVERLAY|
CBEIF_SELECTEDIMAGE|CBEIF_TEXT;
cbi.iItem = i;
cbi.pszText = str[i].GetBuffer(0); //设置列表项文本
cbi.cchTextMax = str[i].GetLength(); //设置文本最大长度
cbi.iImage = i;
cbi.iSelectedImage = i;
cbi.iOverlay = 0;
cbi.iIndent = (0 & 0x03);
m_Combo.InsertItem(&cbi); //插入数据
}
return TRUE; // return TRUE unless you set the focus to a control
}