CListCtrl控件使用
来源:互联网 发布:mac如何更改系统语言 编辑:程序博客网 时间:2024/06/04 01:04
Windows的控件与对应类的关系:给每个控件关联了一个类,在类中封装相应的控件。ClistCtrl encapsulates the functionality of a “list view contrl”.list view control:displays a collection of items each consisting of an icon(from an image list)and a label.
创建:①拖拉控件的方式,相当于创建了一个ClistCtrl对象。②动态创建:构造ClistCtrl对象,其方式如图GDI的创建一样,先构造类对象,再创建list view control。在此可做个推断,所有和windows对象关联的类创建对象时都需要两步,先构造类对象,再创建windows对象将其关联起来。对GDI使用完后需销毁GDI对象,而list view control不用销毁。
列表视图控件可用四种不同方式显示其内容,称为视图。Icon、Small icon、List、Report。直观的理解:windows资源管理器,“查看”标签下的“大图标,小图标,列表,详细资料”。实际使用一般都是report。How:设置其view属性或代码设置其style。
改变style:ClistCtrl创建后可在任何时刻改变它的style。How:①SetView②GetWindowLong获得控件当前格式,然后SetWindowLong设置控件格式。
区分三个单词Column、Item、SubItem:column指列;item指行;subitem指子行,与item配合实用,即第item行第subitem列。要增加数据有两种方式:①一次插入一行或一列,再设置其值。②直接SetColumnWidth或SetItemCount插入n个行或列,再设置其值。
一直选中Item,即让选中行一直高亮显示,两种方式:①设属性Always show select为TRUE②添加扩展样式LVS_SHOWSELALWAYS。区别:①方式选中一行,再执行别的操作,该选中行的底色会变成暗灰色,更实用。②方式会一直以深蓝色显示。
得到单击的ClistCtrl的行列号:添加控件的NM_CLICK消息相应函数:
NM_LISTVIEW* pNMListView=(NM_LISTVIEW*)pNMHDR;
if(pNMListView->iItem!=-1)
{
CString strtemp;
strtemp.Format(_T("单击的是第%d行第%d列"),
pNMListView->iItem, pNMListView->iSubItem);
AfxMessageBox(strtemp);
}
*pResult = 0;
进行大数据量更新时,避免闪烁:
m_ListCtrl.SetRedraw(FALSE);
//更新内容
m_ListCtrl.SetRedraw(TRUE);
m_ListCtrl.Invalidate();
m_ListCtrl.UpdateWindow();
关于:一般在CListCtrl中,每列只能显示260个字符,多一个都会被截掉,但是取出来的数据却是正确的和可编辑子项的CListCtrl类 。
- CListCtrl控件使用总结
- CListCtrl控件使用
- CListCtrl控件使用详解
- CListCtrl控件使用大全
- CListctrl 控件使用
- CListCtrl控件使用
- CListCtrl控件使用
- CListCtrl控件的使用
- CListCtrl控件使用
- CListCtrl控件控件的使用
- 熟悉CListCtrl控件的使用。
- CListCtrl控件的使用详解
- 【VS开发】CListCtrl控件使用
- CListCtrl控件列表控件使用大全
- MFC控件使用总结——CListCtrl
- MFC控件使用总结——CListCtrl
- VS2008下的CListCtrl控件的使用
- MFC 常用控件使用 —— CListCtrl
- HDU 4474 BFS
- 对用户自动登录实现的代码
- 逻辑回归 广告点击率预估
- 用Hough投票做物体检测的3篇文献
- 硬件开源网站
- CListCtrl控件使用
- JDBC连接池
- 无标题
- C语言老师的一封情书
- 实现分断Button,模仿MIUI设置页面顶部Button
- SetPolyFillMode(hdc,imode)中alternate与winding的区别
- STM32 抢占式优先级 响应优先级
- 程序员面试100题之 50 树的子树结构
- ::AfxMessageBox(IDS_ERRINVALIDURL, MB_OK | MB_ICONSTOP)