mfc列表如何清空(MFC编程--列表删除单行及多行操作)

一、添加删除按钮

mfc列表如何清空(MFC编程--列表删除单行及多行操作)(1)

二、删除单行操作

void C管理系统Dlg::OnBnClickedButton3() { CListCtrl* 列表句柄 = (CListCtrl*)GetDlgItem(IDC_LIST3);//获取列表句柄 int 删除的行号 = 列表句柄->GetSelectionMark();//获取选中的行号 列表句柄->DeleteItem(删除的行号);//通过行号删除内容 }

三、删除多行操作

1、在头文件声明一下函数,否则cpp里面无法识别

class C管理系统Dlg : public CDialogEx { // 构造 void 读取信息(); void 递归删除(POSITION); public: C管理系统Dlg(CWnd* pParent = nullptr);

2、通过递归函数实现

CListCtrl* 列表句柄 = (CListCtrl*)GetDlgItem(IDC_LIST3);//获取列表句柄 POSITION 选中的行数 = 列表句柄->GetFirstSelectedItemPosition();//获取第一个选中 行号 递归删除(选中的行数);//通过递归删除

3、实现递归删除函数

CListCtrl* 列表句柄 = (CListCtrl*)GetDlgItem(IDC_LIST3);//获取列表句柄 int 删除的行号 = 列表句柄->GetNextSelectedItem(删除的内容);//获取下一个要删除的行号 if (删除的内容!=NULL) { 递归删除(删除的内容);//不断递归,知道删除内容为空 列表句柄->DeleteItem(删除的行号);//通过行号删除内容 } else { 列表句柄->DeleteItem(删除的行号);//如果只选中一个,直接删除即可 }

四、运行效果

mfc列表如何清空(MFC编程--列表删除单行及多行操作)(2)

五、项目下载

关注网络搞笑编程公众号,后台回复:20220528

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页