当前位置:   article > 正文

MFC编程 -- 列表删除单行及多行操作_mfc list control双击删除某一行

mfc list control双击删除某一行

一、添加删除按钮

二、删除单行操作

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

三、删除多行操作

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

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

2、通过递归函数实现

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

3、实现递归删除函数

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

四、运行效果

五、项目下载

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/301757
推荐阅读
相关标签
  

闽ICP备14008679号