首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CListCtrl使用「建议收藏」

MFC中使用CListCtrl类来封装列表控件的各种操作。...•LVS_SHOWSELALWAYS 在失去焦点时也显示当前选中的结点 •LVS_SINGLESEL 同时只能选中列表中一项 CListCtrl初始化使用过程: 1....设置列表各项文字列表。 通过调用int InsertItem( int nItem, LPCTSTR lpszItem )可以在列表控件中nItem指明位置插入一项,lpszItem为显示字符。...对于列表控件可能取值和对应的数据结构为: •LVN_BEGINLABELEDIT 在开始某项编辑字符时发送,所用结构:NMLVDISPINFO •LVN_ENDLABELEDIT...*pResult = 0; } 关于编辑某项的显示字符: (在报表风格中只对第一列有效)首先需要设置列表控件的 LVS_EDITLABELS风格,在开始编辑时该控件将会发送LVN_BEGINLABELEDIT

1.2K20

VC控件使用小结

CString strChoosed =m_listctrl.GetItemText(indexRow,1);   //获取当前选中行的第2列(列标号从0开始)对应的文本值 2、删除所有列    ...我在使用MFC做媒体播放器时,在涉及到ADO数据库查询后将查询结果放在CListCtrl控件上。查询一次后,当第二次查询时,必须清除上次结果的所有内容,包括列标题头和显示行的内容。...删除显示内容比较容易,直接使用CListCtrl类的DeleteAllItems就可以了;删除列标题就有点麻烦了。这个问题困扰了我很久,终于在一篇CSDN的帖子找到了相应的解决方案。...CListCtrl控件变量对应的列表头指针 iCount = pHeadCtrl->GetItemCount();  //获取列表头的列数 for(i = 0; i 0,0,root2,TVI_LAST);  m_playlistTreeCtrl.InsertItem("周杰伦List",0,0,root2,TVI_LAST); 2、 //清空播放列表CTreeCtrl

1.9K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    CListCtrl详细使用方法

    以下未经说明,listctrl默认view 风格为report 相关类及处理函数 MFC:CListCtrl类 SDK:以 “ListView_”开头的一些宏。...如 ListView_InsertColumn CListCtrl 风格 LVS_ICON: 为每个item显示大图标 LVS_SMALLICON: 为每个item显示小图标 LVS_LIST...: 显示一列带有小图标的item LVS_REPORT: 显示item详细资料 直观的理解:windows资源管理器,“查看”标签下的“大图标,小图标,列表,详细资料” 设置listctrl 风格及扩展风格...的subitem添加图标 m_list.SetExtendedStyle(LVS_EX_SUBITEMIMAGES); m_list.SetItem(..); //具体参数请参考msdn 在CListCtrl.../kb/141834/en-us 在添加item后,再InsertColumn()后导致整列数据移动的问题 Q151897: CListCtrl::InsertColumn() Causes Column

    1.1K20

    ClistCtrl用法及总结(由怎样隐藏ListCtrl列表头的排序小三角形这个bug学习到的知识)

    1 怎样隐藏ListCtrl列表头的排序小三角形 在创建控件是加入|LVS_NOSORTHEADER风格即可。 一下是用法总结: 本文根据本人在项目中的应用,来谈谈CListCtrl的部分用法及技巧。...主要包括以下十三点内容:基本操作、获取选中行的行号、复选框操作、动态设置选中行的字体颜色、设置选中行的背景颜色、禁止拖动表头、让第一列居中显示、设置行高与字体、虚拟列表技术、点击表头时进行归类、向上与向下移动...本篇重点总结:基本操作、获取选中行的行号、复选框操作、动态设置选中行的字体颜色、设置选中行的背景颜色   1、基本操作      分别从下面四点来介绍CListCtrl的基本操作: ①设置列表视图显示方式...对于列号为0的那一列,始终是靠左显示,后面会有修改使其剧中显示的方法,其他列通过设置nFormat属性可以居中显示。...*pResult = CDRF_DODEFAULT; } }  上面谈的方法主要用于设置静态字体颜色,当然,如果你的列表的信息在不断变化(即用SetItemText不断修改),那么也就实现了动态改变了

    3K50

    C++ MFC实现list控件对Excel的读取

    前面已经讲过了C++ MFC程序对Excel文件的写入,链接如下: https://blog.csdn.net/V_Gogol/article/details/81782644 后面很长时间没有更新读取数据操作...我将读取和写入操作都封装成了一个专门的类,便于后续的调用: list控件读取Excel数据 将Excel数据读取到mfc控件中,我写的函数适用于Excel文件列数和list控件列数相同的情况,此处提供源码...具体代码如下: //参数为列表控件 void CFileRW::ExcelToList(CListCtrl *datalist) { //文件对话框,打开具体Excel文件 CFileDialog...()); long colnum = range.get_Count(); //取得已使用区域的起始行,从1开始 long startrow = range.get_Row(); //取得已使用区域的起始列...else if (vResult.vt == VT_I4) { strread.Format(_T("%ld"), (int)vResult.lVal); }; datalist->InsertItem

    88530

    CListCtrl控件使用方法总结

    今天第一次用CListCtrl控件,遇到不少问题,查了许多资料,现将用到的一些东西总结如下: 以下未经说明,listctrl默认view 风格为report 相关类及处理函数 MFC:CListCtrl...CListCtrl 风格       LVS_ICON: 为每个item显示大图标       LVS_SMALLICON: 为每个item显示小图标       LVS_LIST: 显示一列带有小图标的...item       LVS_REPORT: 显示item详细资料       直观的理解:windows资源管理器,“查看”标签下的“大图标,小图标,列表,详细资料” ---- 2....", LVCFMT_LEFT, 50 );       int nRow = m_list.InsertItem(0, “11”);//插入行       m_list.SetItemText(nRow...判断是否点击在listctrl的checkbox上       添加listctrl控件的NM_CLICK消息相应函数       void CTest6Dlg::OnClickList1(NMHDR

    1.9K130

    MFC应用程序——标签控件_IP控件_时间控件_List Control控件_Tree Control控件_命令按钮_列表框_组合框_图片_滚动控件「建议收藏」

    List Control同样比较常见,它能够把 任何字符串内容以列表的方式显示出来,这种显示方式 的特点是整洁、直观,在实际应用中能为用户带来方便。...当然列表项可以只包含图 标也可以只包含标签 Tree Control控件 树形控件在Windows系统中是很常见的,例如资源 管理器左侧的窗口中就有用来显示目录的树形视图。...树形控件在插入新的树节点时会稍麻烦些,回顾之 前的列表框,插入新列表项时调用AddString成员函数 就可以了,而对于树形控件则需要指定新节点与已有节 点的关系。...另外,树形控件与列表视图控件一样,可以 在每一个节点的左边加入图标。这些都使得树形控件给 人一种复杂的感觉,但我们在使用它一两次后会发现其 实树形控件用起来还是很方便的。...像列表框和组合框设置了WS_HSCROLL或 WS_VSCROLL风格以后出现的滚动条,不是一个独立的窗 口,而是这些窗口的一部分,这就是标准滚动条。

    2.6K10

    MFC应用技术之CTreeControl的使用

    MFC应用技术之CTreeControl的使用 一丶MFC添加树控件.添加父节点跟子节点.   ...MFC上面放一个树控件.并未这个树控件绑定变量.然后添加一个按钮.按钮的作用就是添加父节点跟子节点. PS: 关于MFC如果添加控件.这里不做讲解.此篇只用于应用.所以常用的都会列举出来.   ...信号的结束编辑标签 TVN_GETDISPINFO请求树控件需要显示的项的信息。...TVN_ITEMEXPANDED子项父项的列表展开或折叠的信号 TVN_ITEMEXPANDING子项的父项列表会展开或折叠的信号 TVN_KEYDOWN信号键盘事件 TVN_SELCHANGE信号从中选择一项更改为另一个架构...而返回值是微软已经给我们转好的.所以我们需要的信息就在里面.我们可以看下结构内容. LPNMTREEVIEW 这是一个宏.宽版本还是A版本. 熟悉Windows的都应该知道.

    1.4K10

    任务管理器编码详解

    首先创建一个MFC的应用程序, 在主对话框类中添加一个TabContrl标签控件用于放置应用程序、进程和CPU信息三个页面, 子对话框的显示与切换,是通过标签控件完成的。...; //图表 接下来就创建子窗口: m_Tab.InsertItem(0, _T("应用程序"), 60);//向tab控件中添加每个参数选项卡的值 m_Tab.InsertItem(1, _T("进程信息...这样便可将在个对话框分别显示于标签控件的每个页面中,但要实现选择标签的不同项显示不同页面还需在OnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult)添加显示代码...,可以是TH32CS_SNAPPROCESS等 DWORD th32ProcessID //一个进程ID号,用来指定要获取哪一个进程的快照,当获取系统进程列表或获取 当前进程快照时可以设为0 Process32First...还发现了自己的一些不足之处:最重要的就是犹豫不前,搜索到以后就一个就可以开始写,我们要在写的过程中发现自己的问题,而不是先整体上有框架,知道具体的实现过程,这是不可取的。正确的做法是要边做边发现问题。

    2K110

    MFC中的CListCtrl的最左边一列必须左对齐吗?

    好久不写MFC的程序了,很多细节问题都记不清了,今晚无意中要用到CListCtrl控件,希望能够表头采用自己绘制的方式显示,于是自己编写了OnPaint方法进行重绘,过程中需要根据每一列的对齐方式进行绘制表头中的标题文字... lpBuffer;    tItem.cchTextMax = 256;   tItem.mask = HDI_FORMAT | HDI_TEXT;   GetItem(i, &tItem);   在取得了列的信息之后...中插入列的时候,第一列我设置成了剧中对齐,但是结果无论如何都得不到正确的结果,偏偏其他列我又是设置的左对齐,所以结果所有列都是左对齐,于是我认为是不是GetItem没有取得对齐方式的数据,结果到MSDN...中寻找帮助,结果一无所获,后来想想是不是我的MSDN太旧了,就到微软的MSDN网站查看帮助文档,结果在说明中发现了这样一句话: Remarks The leftmost column in a list...不觉感叹道:这是谁规定的啊?真是不地道。 于是问题又来了,如果让第一列能够做到剧中对齐呢?通过实验发现在InsertColumn的时候第一个参数就是列的索引,取值从1开始,这样就可以解决问题了。

    1.4K60

    【转】使用DirectUI技术实现QQ界面

    还能大大减少代码量,因为据统计,传统MFC程序中,界面代码大约占总代码的1/3强!也就是说,这个1/3的代码都可以由xml+javascript替代!...同理,如果网页开发时,每个图片都需要由web程序绘制,你能想象一个网页的代码量有多少吗? 简直不能想象,而传统Window程序就是如此!...参照网页开发中的JavaScript,DirectUI JavaScript可以控制控件的状态、文本、显示/隐藏、位置等等属性。...像这样的需求,在界面开发中是比较常见的。 在c++代码中,剩余的只是界面与程序逻辑的借口。比如,QQ2009中从服务器接收添加用户的通知,然后操作界面将此用户显示出来。...如果是用CListCtrl,那么有两种办法:在CListCtrl中再创建几个CListCtrl,用来表示Item。但这有些弊端:一个窗口内子窗口的数量有限、使CListCtrl过于庞大,影响性能。

    1.8K50

    CListCtrl大数据显示

    大家好,又见面了,我是你们的朋友全栈君。 CListCtrl是个很方便的东西,但是当数据大到一个程度(比如说10万条数据),显示速度就会非常的慢。解决办法就是用虚拟列表。...CListCtrl显示数据的原理是将需显示的所有数据拷贝在它内部的一块空间里,然后显示出来。一但数据量过大,拷贝的时间就会延长,显示速度当然也就非常慢了。...而虚拟列表则不需要将显示数据拷贝到内部空间,它的做法是当需要显示某个数据时,才将数据拷入内部空间。看上去好像和普通CListCtrl的做法相同,实则大不一样。因为列表一屏的数据,最多也就几百行。...一个是ImportData,作用是导入需要显示的数据。里面只有两条语句,第一条为获取数据指针,第二条为设置列表长度(一共有多少条数据)。这个是自定义函数,可以自定义函数名和导入的数据结构。...这个函数是事件函数,当列表中的一个单元格需显示的时候调用。 使用时,还需要将列表控件的“所有者数据”属性设为“true”。

    83220
    领券