我使用vc++ 中的listcontrol控件时,使用insertitem总是不行,经常跳出一个警告框提示必须终止程序,why?
2个回答
展开全部
亲,InsertColumn()与InsertItem()是有区别的,在动态生成表中情况不一样。动态生成表时要用InsertItem给出朱列索引,而InsertColum主要用在初始化时静态创建列头。
比如:
一般动态生成时需要用到InsertItem来设置列名,就是你那个“课程,星期一。。。”的列头。
同时还要给出一个分列的索引,既要在如“星期一”那列的那一行插入“自习”
如:
int pos,id=1;
pos = m_List.InsertItem(id,strDomainName);//主列索引
m_List.SetItemText(pos,0,MusicName);//第二个参数是分列索引
m_List.SetItemText(pos,1,ZhuoZhe);
m_List.SetItemText(pos,2,SomethingAbout);
m_pRecordset->MoveNext();//移到下一行
有时SetItemText里面的所有参数都是变量,用InsertColomn就无法实现了
所以你代码里面既用了InsertColumn又用了nsertItem,虽然不知道代码整体,但肯定是有问题的
比如:
一般动态生成时需要用到InsertItem来设置列名,就是你那个“课程,星期一。。。”的列头。
同时还要给出一个分列的索引,既要在如“星期一”那列的那一行插入“自习”
如:
int pos,id=1;
pos = m_List.InsertItem(id,strDomainName);//主列索引
m_List.SetItemText(pos,0,MusicName);//第二个参数是分列索引
m_List.SetItemText(pos,1,ZhuoZhe);
m_List.SetItemText(pos,2,SomethingAbout);
m_pRecordset->MoveNext();//移到下一行
有时SetItemText里面的所有参数都是变量,用InsertColomn就无法实现了
所以你代码里面既用了InsertColumn又用了nsertItem,虽然不知道代码整体,但肯定是有问题的
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
贴出代码比较好哦
追问
ID为IDC_LIST1,对应于变量m_Listlist,不添加消息处理函数,只在函数中BOOL CMydialgDlg::OnInitDialog()添加如下代码:
m_Listlist.InsertColumn(0,"学号",LVCFMT_LEFT,100);
m_Listlist.InsertItem0,"080910210");
运行后就会出现终止框!
追答
要先对列表框进行一些初始化的操作,在MSDN中能找到实例的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询