码迷,mamicode.com
首页 > 编程语言 > 详细

MFC 记录 CListCtrl 学习使用

时间:2015-01-25 12:24:08      阅读:346      评论:0      收藏:0      [点我收藏+]

标签:

1.图标模式 Icon

2.小图标模式 Small Icon

3.列表模式  List

4.报表模式  Report

这里拿Report作为例子:

List风格以及扩展风格内容:

      LONG lStyle;  
      lStyle = GetWindowLong(m_list.m_hWnd, GWL_STYLE);//获取当前窗口style  
      lStyle &= ~LVS_TYPEMASK; //清除显示方式位  
      lStyle |= LVS_REPORT; //设置style  
      SetWindowLong(m_list.m_hWnd, GWL_STYLE, lStyle);//设置style  
      DWORD dwStyle = m_list.GetExtendedStyle();  
      dwStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl)  
      dwStyle |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl)  
      dwStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控件  
      m_list.SetExtendedStyle(dwStyle); //设置扩展风格  

首先 创建一个MFC工程->基于对话框->完成

然后删除多余的东东, 添加一个ListCtrl->添加变量 m_ListCtrl 在程序初始化处添加初始化ListCtrl代码就可以了

 

    //设置选中整行,网格状态  设置ListCtrl样式  
    m_ListCtrl.SetExtendedStyle(LVS_EX_CHECKBOXES|LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES); 
    //0,为标题起始位,内容,内容对齐方式,标题宽度 
    m_ListCtrl.InsertColumn(0, _T("标题1"),LVCFMT_LEFT,50); 
    m_ListCtrl.InsertColumn(1, _T("标题2"), LVCFMT_LEFT, 80);  
    m_ListCtrl.InsertColumn(2, _T("标题3"), LVCFMT_LEFT, 50);  
    m_ListCtrl.InsertColumn(3, _T("标题4"), LVCFMT_LEFT, 50);  
    m_ListCtrl.InsertColumn(4, _T("标题5"), LVCFMT_LEFT, 50);
    //添加列内容  
    m_ListCtrl.InsertItem(0, _T("5552"));//内容第一项,索引从0开始,  
    m_ListCtrl.SetItemText(0, 1, _T("小哥布林"));//第一项第二格内容,一下一次类推  
    m_ListCtrl.SetItemText(0, 2, _T("-127.5225"));  
    m_ListCtrl.SetItemText(0, 3, _T("50.551"));  
    m_ListCtrl.SetItemText(0, 4, _T("108.555"));   

//常用ListCtrl函数
/*
高级列表控件ListCtrl关联的MFC中的类:CListCtrl  
■ 报表样式ListCtrl常用操作:  
1、添加列标题头:InsertColumn  
2、获取与设置列宽:GetColumnWidth、SetColumnWidth  
3、添加一行:InsertItem、SetItemText  
4、获取与设置单元文本:GetItemText、SetItemText  
5、允许多行选中时,获取选中的行数:GetSelectedCount  
6、单行选中时,获取选中的行:GetSelectionMark  
7、选中某行:SetItemState(n, LVIS_SELECTED, LVIS_SELECTED);  
8、获取某行的状态是否为选中:GetItemState(n, LVIS_SELECTED) == LVIS_SELECTED  
9、删除所有行:DeleteAllItems  
10、删除指定列:DeleteColumn  
11、删除指定行:DeleteItem  
12、获取与设置列表控件的背景色:GetBkColor、SetBkColor  
13、获取与设置文字背景色:GetTextBkColor、SetTextBkColor  
14、获取与设置文字前景色:GetTextColor、SetTextColor  
15、获取与设置Check:GetCheck、SetCheck  
16、获取与设置图标列表:GetImageList、SetImageList  
17、获取与设置行附加数据:GetItemData、SetItemData  
18、获取与设置扩展风格样式:GetExtendedStyle、SetExtendedStyle  
19、设置正行选中与网格线:SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);  
20、让ListCtrl支持编辑的功能:  
①、将属性中的 Edit Labels 设置为 True;  
②、响应控件的 LVN_EDNLABELEDIT 消息,添加如下代码:  
CString strText;  
m_ListCtrl.GetEditControl()->GetWindowText(strText);  
m_ListCtrl.SetItemText(pDispInfo->item.iItem, pDispInfo->item.iSubItem, strText); 
*/

 




MFC 记录 CListCtrl 学习使用

标签:

原文地址:http://www.cnblogs.com/callback/p/4247941.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!