ListCtrl中插入行的问题

kennyworld 2009-06-04 02:34:28
用下面的方法往listctrl里循环插入行。

LV_ITEM lvitem;
lvitem.mask=LVIF_TEXT|LVIF_PARAM;
lvitem.iItem=nCount;

lvitem.iSubItem=colmPos;
lvitem.pszText=(LPSTR)(LPCTSTR)strBuf;
lvitem.lParam=nCount;

m_pListCtrl->InsertItem(&lvitem);
m_pListCtrl->SetItem(nCount, colmPos, LVIF_TEXT, strBuf, 0, 0, 0, 0);
colmPos +=1;
m_pListCtrl->SetItem(nCount, colmPos, LVIF_TEXT, strBuf, 0, 0, 0, 0);
colmPos +=1;
m_pListCtrl->SetItem(nCount, colmPos, LVIF_TEXT, strBuf, 0, 0, 0, 0);

当colmPos从0开始时行能够插入,但是当colmPos不从0开始行是不能插入的。
也就是说InsertItem的参数lvitem的iSubItem的值一定要是0吗?
...全文
100 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
kennyworld 2009-06-05
  • 打赏
  • 举报
回复
>>我看你保存的参数根本没什么意义!!!
这个是什么意思?
yxq281426250 2009-06-05
  • 打赏
  • 举报
回复
学习~~~
redleaf515 2009-06-04
  • 打赏
  • 举报
回复
简单问题你复杂化了...
Channels_net 2009-06-04
  • 打赏
  • 举报
回复
iSubItem
One-based index of the subitem to which this structure refers, or zero if this structure refers to an item rather than a subitem.

如果你要插入一行的话这个必须设置成 0;
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 qimiao77 的回复:]
是的,其实直接调用InsertItem(int nItem,LPCTSTR lpszItem );就可以了
我看你保存的参数根本没什么意义!!!

[/Quote]
贪玩的老鼠 2009-06-04
  • 打赏
  • 举报
回复
教科书,害死人啊!!!
贪玩的老鼠 2009-06-04
  • 打赏
  • 举报
回复
是的,其实直接调用InsertItem(int nItem,LPCTSTR lpszItem );就可以了
我看你保存的参数根本没什么意义!!!

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧