MFC 学习笔记

控件的总结:

1.CListCtrl

CListCtrl的部分用法及技巧,总结起来大概有十三点技巧:
基本操作、获取选中行的行号、复选框操作、动态设置选中行的字体颜色、设置选中行的背景颜色、禁止拖动表头、让第一列居中显示、设置行高与字体、虚拟列表技术、点击表头时进行归类、向上与向下移动、动态调整大小问题、避免闪烁问题.
(1).CListCtrl的四种样式:

LVS_ICON                      为每个item显示大图标
LVS_SMALLICON                 为每个item显示小图标
LVS_LIST                      显示一列带有小图标的item
LVS_REPORT                    显示item详细资料

(2).CListCtrl的三种扩展样式

LVS_EX_FULLROWSELECT          选中某行时使正行高亮
LVS_EX_GRIDLINES              设置网格线、
LVS_EX_CHECKBOXES             item前生成Ckeckbox控件

SetExtendedStyle(style) 设置扩展样式的函数
GetExtendedStyle(style) 获取扩展样式的函数
(3)CListCtrl插入一列函数:InsertColumn() 一行:InsertItem()

int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat, int nWidth, int nSubItem)
这样一看就清楚多了,第几列,名称,对齐方式,宽度(像素点)
m_List.InsertColumn(nSel, "行名称", LVCFMT_LEFT, nWidth);

注意: CListCtrl在显示为Report样式时,主项为第一项,后面紧跟着的为子项。主项和子项的数据写入不同,这将在后面提到。

int InsertItem( int nItem, LPCTSTRlpszItem )
同样的:
list.InsertItem(0,"主数据");

③删除操作
有三个操作函数:

 BOOL DeleteAllItems()  -------删除所有的行
 BOOL DeleteItem(nItem) --------删除某一行
 BOOL DeleteColumn(nCol) -----删除某一列

④获取/设置属性函数
有很多函数了,就不一一介绍了。常用的有

 int GetItemCount() -------- 获取已插入信息的行数
 BOOL SetItemState(int iLink, UINTstate, UINTstateMask ) ---------设置行状态,如高亮显示等

其他的一些更复杂的操作看这篇文章:
关于CListCtrl的总结博客

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • HTML标签解释大全 一、HTML标记 标签:!DOCTYPE 说明:指定了 HTML 文档遵循的文档类型定义(D...
    米塔塔阅读 8,672评论 1 41
  • 转载请声明 原文链接地址 关注公众号获取更多资讯 第一部分 HTML 第一章 职业规划和前景 职业方向规划定位...
    前端进阶之旅阅读 16,697评论 32 459
  • <a name='html'>HTML</a> Doctype作用?标准模式与兼容模式各有什么区别? (1)、<...
    clark124阅读 8,933评论 1 19
  • 女孩们一定都会有这样的经历,买回了美美的鞋子,穿上却总是磨脚,就算是是几百上千块的名牌有时也是如此,这可真是痛苦!...
    走走看看121阅读 2,622评论 0 0
  • 有生之年,希望逢着一场诗歌篝火晚会,春风微拂,披着轻纱,靠在爱人肩头,静静聆听远处无名诗人的吟诵,放佛寻得故乡,仿...
    花的日記阅读 2,507评论 0 0