我在工具条上动态添加了一个ComboBoxEx控件,并通过如下代码向其中添加图标和内容
CImageList m_ImageList;
HICON hIcon;
hIcon = AfxGetApp()-> LoadIcon( IDI_ICON2 );
m_ImageList.Create( 16, 16, ILC_COLOR, 2, 2 );
m_ImageList.Add( hIcon );
//关联图像列表和扩展组合框
m_ToolBar.m_combobox.SetImageList( &m_ImageList );
COMBOBOXEXITEM cbi;//扩展组合框单元
cbi.mask = CBEIF_IMAGE| CBEIF_INDENT | CBEIF_OVERLAY |CBEIF_SELECTEDIMAGE | CBEIF_TEXT;
for(int i = 1;i<= 33;i++)
{
s.Format(_T("-%d"),i);
cbi.iItem = i ;
cbi.iImage = 1;
cbi.iSelectedImage = 0;
cbi.iOverlay = 0 ;
cbi.pszText = (LPTSTR)(LPCTSTR) s ;
m_ToolBar.m_combobox.InsertItem(&cbi);//插入单元
}
结果是组合框控件显示出来了,可里面什么也没有,不知何故,请高人指点。
------解决方案--------------------------------------------------------
没有设置cbi的mask
cbi.mask=CBEIF_IMAGE|CBEIF_TEXT