我使用vc++ 中的listcontrol控件时,使用insertitem总是不行,经常跳出一个警告框提示必须终止程序,why?

 我来答
轩辕凰雅
推荐于2016-12-04
知道答主
回答量:17
采纳率:0%
帮助的人:12.1万
展开全部
亲,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,虽然不知道代码整体,但肯定是有问题的
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yuxiao1121
2012-04-14 · TA获得超过130个赞
知道小有建树答主
回答量:132
采纳率:100%
帮助的人:138万
展开全部
贴出代码比较好哦
追问
ID为IDC_LIST1,对应于变量m_Listlist,不添加消息处理函数,只在函数中BOOL CMydialgDlg::OnInitDialog()添加如下代码:
m_Listlist.InsertColumn(0,"学号",LVCFMT_LEFT,100);
m_Listlist.InsertItem0,"080910210");
运行后就会出现终止框!
追答
要先对列表框进行一些初始化的操作,在MSDN中能找到实例的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式