当前位置: 首页 > news >正文

Windows图形界面(GUI)-MFC-C/C++ - 列表视图(List Control) - CListCtrl

  • 公开视频 -> 链接点击跳转公开课程
  • 博客首页 -> ​​​链接点击跳转博客主页

目录

列表视图(List Control) - CListCtrl

创建列表视图

设置列表视图属性

成员函数

注意事项

示例代码


列表视图(List Control) - CListCtrl

创建列表视图
  • 在对话框编辑器中,从工具箱中拖拽一个List Control到对话框资源。在类向导中为List Control添加变量,类型为CListCtrl
设置列表视图属性
  • 在对话框的属性窗口中,可以设置List Control的各种属性,如视图模式(View)、列标题(Column Headers)等。

  • 视图模式:大图标、小图标、列表、详细信息。

  • 列标题:设置列的标题和宽度。

成员函数
  • InsertColumn:插入新列。

  • DeleteColumn:删除指定列。

  • SetColumnWidth:设置列的宽度。

  • InsertItem:插入新行。

  • DeleteItem:删除指定行。

  • DeleteAllItems:删除所有行。

  • SetItemText:设置指定行和列的文本。

  • GetItemText:获取指定行和列的文本。

  • SetItemState:设置指定行的状态。

  • etItemState:获取指定行的状态。

  • SetItemImage:设置指定行的图像。

  • GetItemImage:获取指定行的图像索引。

  • SortItems:使用用户提供的比较函数对列表视图进行排序。

  • SetExtendedStyle:设置列表视图的扩展样式。

  • GetExtendedStyle:获取列表视图的扩展样式。

注意事项
  • 确保在创建列表视图之前,父窗口已经创建。

  • 列表视图的父窗口应该是对话框或框架窗口。

  • 列表视图的ID应该在对话框类的消息映射中正确映射。

示例代码
void CMainDlg::OnBnClickedButton1()
{// 设置风格m_ListView.SetExtendedStyle(m_ListView.GetExtendedStyle() | LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);// 添加列m_ListView.InsertColumn(0, _T("序号"), LVCFMT_LEFT, 50);m_ListView.InsertColumn(1, _T("进程ID"), LVCFMT_LEFT, 80);m_ListView.InsertColumn(2, _T("进程名"), LVCFMT_LEFT, 80);m_ListView.InsertColumn(3, _T("进程路径"), LVCFMT_LEFT, 200);
}void CMainDlg::OnBnClickedButton28()
{CString strIndex;int nItem = m_ListView.InsertItem(m_ListView.GetItemCount(), L" ");strIndex.Format(L"%d", nItem + 1);m_ListView.SetItemText(nItem, 0, strIndex);m_ListView.SetItemText(nItem, 1, _T("1024"));m_ListView.SetItemText(nItem, 2, _T("notepad.exe"));m_ListView.SetItemText(nItem, 3, _T("C:\\Windows\\System32\\Notepad.exe"));}void CMainDlg::OnNMDblclkList2(NMHDR* pNMHDR, LRESULT* pResult)
{LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);// TODO: 在此添加控件通知处理程序代码if (pNMItemActivate->iItem != -1){CString strIndex = m_ListView.GetItemText(pNMItemActivate->iItem, 3);ShellExecute(NULL, NULL, strIndex, NULL, NULL, SW_SHOWDEFAULT);}*pResult = 0;
}

http://www.lryc.cn/news/418218.html

相关文章:

  • 一机两用的简单介绍
  • uniapp离线打包热更新失败-AndroidStudio离线打包apk后无法下载打开-热更新失败-plus.runtime.install失败
  • 深植根基、蓬勃向上 | openKylin 2.0正式发布!
  • 【Material-UI】按钮组:尺寸与颜色详解
  • app抓包 burp配置
  • 图像与像素:利用ImageJ分析荧光显微镜图像|QuPath基础教程1|24-08-08
  • Prompt Fuzzer:用于增强 GenAI 应用程序的开源工具
  • Vision Pro使用GLFT 加载模型shader错误解决办法
  • Netty技术全解析:MessageToMessageCodec类深度解析
  • Three 【3D车模换肤】
  • 语言模型简介和Ngram模型(1)
  • MessageBox弹框替代系统自带的alert、confirm -- 高仿ElementUI MessageBox
  • 数据结构一排序算法
  • [Leetcode 215][Medium]-数组中的第K个最大元素-快排/小根堆/堆排序
  • 【栈和队列】常见面试题
  • 关于float浮点值二进制存储和运算精度损失的话题
  • python爬虫学习记录-请求模块urllib3
  • 谷粒商城实战笔记-133~135-城业务-商品上架-远程上架接口
  • 【React】详解 App.js 文件
  • 【ML】self-supervised Learning for speech and Image
  • 青岛实训day24(8/8)
  • *算法训练(leetcode)第四十五天 | 101. 孤岛的总面积、102. 沉没孤岛、103. 水流问题、104. 建造最大岛屿
  • 设计模式 由浅入深(待完结)
  • (第34天)645、最大二叉树
  • Python知识点:如何使用Paramiko进行SSH连接与操作
  • 代码随想录算法训练营第六天(一)|242.有效的字母异位词
  • 数据结构 | 考研代码题之顺序表 | 1 查找L中值为e的数据元素若找到则返回其下标,若找不到则返回-1
  • RLVF:避免过度泛化地从口头反馈中学习
  • 设计原则与思想-从项目实战中学习设计模式
  • python中的类属性、实例属性、类方法、实例方法和静态方法