我想在列表控件的第二列加入图标,但是图片总是无法显示,求大神指导。
BOOL CamEditorDlg::OnInitDialog()
{
CDialogEx::OnInitDialog(); m_ImageList.Create(16,16,TRUE|ILC_COLOR24,2,2);
m_CamList.SetImageList(&m_ImageList,LVSIL_SMALL);//向列表控制中添加表列
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_INFORMATION));
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_ERROR));//设置图象列表
CRect rect;
m_CamList.GetClientRect(&rect);
m_CamList.SetExtendedStyle(m_CamList.GetExtendedStyle() | LVS_EX_FULLROWSELECT
|LVS_EX_SUBITEMIMAGES);
// 为列表视图控件添加三列
m_CamList.InsertColumn(0, _T("Status"), LVCFMT_LEFT, rect.Width()*3/16, 1);
m_CamList.InsertColumn(1, _T("Camera ID"), LVCFMT_LEFT,rect.Width()*5/16, 0);
m_CamList.InsertColumn(2, _T("Data"), LVCFMT_LEFT, rect.Width()/4, 2);
m_CamList.InsertColumn(3, _T("Sensor Type"), LVCFMT_LEFT, rect.Width()/4, 3); m_CamList.InsertItem(0, _T("y"));
m_CamList.SetItem(0, 1, LVIF_IMAGE, NULL, 1, 0, 0, 0);
m_CamList.SetItemText(0, 1, _T("geo"));
m_CamList.SetItemText(0, 2, _T("01.01.70.10"));
m_CamList.SetItemText(0, 3, _T("Aerial frame"));
……
}
BOOL CamEditorDlg::OnInitDialog()
{
CDialogEx::OnInitDialog(); m_ImageList.Create(16,16,TRUE|ILC_COLOR24,2,2);
m_CamList.SetImageList(&m_ImageList,LVSIL_SMALL);//向列表控制中添加表列
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_INFORMATION));
m_ImageList.Add(AfxGetApp()->LoadIcon(IDI_ERROR));//设置图象列表
CRect rect;
m_CamList.GetClientRect(&rect);
m_CamList.SetExtendedStyle(m_CamList.GetExtendedStyle() | LVS_EX_FULLROWSELECT
|LVS_EX_SUBITEMIMAGES);
// 为列表视图控件添加三列
m_CamList.InsertColumn(0, _T("Status"), LVCFMT_LEFT, rect.Width()*3/16, 1);
m_CamList.InsertColumn(1, _T("Camera ID"), LVCFMT_LEFT,rect.Width()*5/16, 0);
m_CamList.InsertColumn(2, _T("Data"), LVCFMT_LEFT, rect.Width()/4, 2);
m_CamList.InsertColumn(3, _T("Sensor Type"), LVCFMT_LEFT, rect.Width()/4, 3); m_CamList.InsertItem(0, _T("y"));
m_CamList.SetItem(0, 1, LVIF_IMAGE, NULL, 1, 0, 0, 0);
m_CamList.SetItemText(0, 1, _T("geo"));
m_CamList.SetItemText(0, 2, _T("01.01.70.10"));
m_CamList.SetItemText(0, 3, _T("Aerial frame"));
……
}
解决方案 »
- 我要一个制作chm文件的工具,听说在vc安装盘的\htmlhelp\htmlhelp.exe目录中,可惜本人没光驱,望持有者慷慨解囊..
- 在access数据库中为什么会所有字段出现"#错误",这是什么原因造成的?
- 求助有关切分窗口的问题
- 我想做一网页,别人一到我的网页后就会修改他的注册表,请问是不是用ActiveX来实现?决不是用来做坏事的!
- 在头文件里声明两个类,类A用到类B,类B又用到类A的C++类声明的问题(马上结贴)
- 怎样让COM组件的方法返回ADO记录集对象?
- gethostname函数出了什么问题?????????
- 急急,我在VC++的File点New,然后选Project,然后选Win32 Application,再选An Empty Project,结果我想要输入代码,可没有地方输的进去?
- 特怪问题:变量声明换了位置后就会出现问题?
- 制作过文字编辑的高手:怎样设置RichEdit可以编辑的最大字符数?
- 子线程
- 关于stream != NULL问题
m_CamList.InsertItem(0, _T("y"), 0);
m_CamList.InsertItem(1, _T("z"), 1);
不要这么动态加载。建议自己把ICON制作成BITMAP条放在资源文件中,根据BITMAP条的属性来Create具体代码请参见VS2008以后带BCG风格的多文档新建程序中有。LoadIcon问题多多。