ListCtrl如何根据某一列中某一行的内容得到行号,并删除次行比如,我第二列,中第N行有个数据10003
我想删除有10003的这一行
我想删除有10003的这一行
解决方案 »
- 求简单的普通下载库。
- [200]windows server,如何把用户名和注册表中的HKEY_USER对应起来?
- 如何获得动态产生对话框的控件的数据
- 高手帮一下忙,程序中出先illegal
- ISAPI中的一个问题
- 请问在unix下,MFC还能派上用场吗?
- 请教 2000下如何停用/启用 硬件设备 ?
- ado 问题,
- 在2000下能不能不让程序弹出“应用程序错误”的对话框?
- 异步方式同时打开moxa卡的串口有问题,数据不出来。要用其他软件一一打开串口后,再启动我的程序才能读到数据
- VC2008中的CString 默认是? CStringT还是CStringA,如何强制设置默认
- include 'stdafx.h' before including this file for PCH
用GetItemText(...),获得此行你要的那一项的内容,判断是否和10003相等。
如果相等,保存这一行,然后删除这一行DeleteItem (int nItm)就好了。int t; //这个是你要判断的内容10003所在列表的列号。如果列表只有一列 那就是0
int num=list.GetItemCount();
int index;
for(int i=0;i<num;i++)
{
CString str=list.GetItemText(i,t);
if(str=="10003")
{
index=i;
break;
}
}list.DeleteItem(index,t);
这就把内容是10003的哪一行给删除了..
for (int i=0; i<ListCtrl->GetItemCount(); i++)
{
if (ListCtrl->GetItemText(i, 1).Compare(TEXT("10003")) //检查每一行的第二列,是不是等于10003
{
ListCtrl->DeleteItem(i);
}
}
CString strBuf;
for(int iLine=list.GetItemCount()-1;iLine>=0;iLine--)
{
strBuf = list.GetItemText(iLine,iCol);
if(strBuf == "10003")
{
list.DeleteItem(iLine);
}
}