关于CListView请教 我在程序中使用了CListView类,显示方式为LVS_REPORT 表头的两列显示正常。然而条目却只显示了第一列,第二列数据显示不出来,为什么?该如何设置才能使两列均能显示呢? 谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 lvitem.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_PARAM; for ( i = 0; i < 10; ++i) { CString str; str.Format("Time %d", i); lvitem.iItem=i; lvitem.iSubItem=0; lvitem.pszText=str.GetBuffer(7); lvitem.lParam=i; iPos = ListCtrl.InsertItem(&lvitem); str.Format("Text %d", i); lvitem.iItem=iPos; lvitem.iSubItem=1; lvitem.pszText=str.GetBuffer(7); ListCtrl.SetItem(&lvitem); } 我的方法:CString str;str.Format("%d",i);nItem=refCtrl.InsertItem(0xffff,str,0);// 最后一个参数为所选图片refCtrl.SetItem(nItem,1,1,"LLM",NULL,0,0,0);refCtrl.SetItem(nItem,2,1,"LLM",NULL,0,0,0);refCtrl.UpdateWindow(); 是不是我的方法有问题呀?但是我在独立使用CListCtrl控件的时候用的是同样的方法,显示正常!是不是在设置dwStyle的时候有什么要注意的呀? 这样就可以了:LV_ITEM lvitem;lvitem.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_PARAM;for (int i = 0; i < 10; ++i) { CString str; str.Format("Time %d", i); lvitem.iItem=i; lvitem.iSubItem=0; lvitem.pszText=str.GetBuffer(7); lvitem.lParam=i; int iPos = m_ListCtrl.InsertItem(&lvitem); str.ReleaseBuffer(); str.Format("Text %d", i); m_ListCtrl.SetItemText(iPos,1,str);} 问题已经解决了!我感觉好的解决的关键是用了SetItemText()函数。但我的设置第二列的方法也没有什么错误,但为什么就是显示不出第二列呢? 如何使用VS2005的CLASS DESIGNED 求教 关于PICTURE控件与滑块控件 关于ActiveX在网页上显示的问题 请教一个访问SyBase数据库的问题?请多指导,谢谢大家. 如何测量不规则图形(类似椭圆)的长度(直径) 在vc中如何控制Excel单元格小数点的个数? 高分求救一个最简单的问题 如何得到当前窗口的实际尺寸? 关于QueryInterface的问题 数据类型 ATOM 的作用是什么? 求:延长别的程序启动时间的程序 100分
lvitem.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_PARAM;
for ( i = 0; i < 10; ++i)
{
CString str;
str.Format("Time %d", i);
lvitem.iItem=i;
lvitem.iSubItem=0;
lvitem.pszText=str.GetBuffer(7);
lvitem.lParam=i;
iPos = ListCtrl.InsertItem(&lvitem); str.Format("Text %d", i);
lvitem.iItem=iPos;
lvitem.iSubItem=1;
lvitem.pszText=str.GetBuffer(7);
ListCtrl.SetItem(&lvitem);
}
CString str;
str.Format("%d",i);
nItem=refCtrl.InsertItem(0xffff,str,0);// 最后一个参数为所选图片
refCtrl.SetItem(nItem,1,1,"LLM",NULL,0,0,0);
refCtrl.SetItem(nItem,2,1,"LLM",NULL,0,0,0);
refCtrl.UpdateWindow();
lvitem.mask=LVIF_TEXT|LVIF_IMAGE|LVIF_PARAM;
for (int i = 0; i < 10; ++i) {
CString str;
str.Format("Time %d", i);
lvitem.iItem=i;
lvitem.iSubItem=0;
lvitem.pszText=str.GetBuffer(7);
lvitem.lParam=i;
int iPos = m_ListCtrl.InsertItem(&lvitem);
str.ReleaseBuffer(); str.Format("Text %d", i);
m_ListCtrl.SetItemText(iPos,1,str);
}