一步一步学List Control控件的用法(第一步)----创建第一列
来源:互联网 发布:马王堆女尸 知乎 编辑:程序博客网 时间:2024/05/01 22:04
注:开发平台为VS2008.NET。
1、 创建一个MFC应用程序,选择基于对话框的。
具体步骤如下:文件à新建à项目àVisual C++àMFCàMFC应用程序,在下方名称中输入你自己想要建立的项目名,此处为ListCtrl。
在MFC应用程序向导中选择引用程序类型,然后在窗口右边应用程序类型中选择基于对话框,然后选择完成。
2、 进入项目,可以直接看到建立好的一个对话框,将对话框中部的“TODO:在此放置对话框删除”。
3、 从工具箱中拖一个List Contrrol到对话框上,调节大小到自己满意的状态。
4、 将控件(一般ID为IDC_LIST1)的View的属性改为改为Report,一般默认为ICON。
5、 使用Ctrl+左键双击,打开添加成员变量向导,选择控件变量,控件ID为上一步添加的的List Control的ID(默认为IDC_LIST1),设置访问权限(一般为public),变量类型(CListCtrl),变量名可以自己设定,此处假设为m_ListCtrl,点击确定。由此可以发现在你的对话框对应的类中多了一个变量。对话框对应的类名为CXXXXDlg,XXX为你的工程名,此处为CListCtrlDlg。
6、 在对话框对应的类CListCtrlDlg中的OnInitDialog(void)中的CDialog::OnInitDialog();后便可以添加代码如下:
m_ListCtrl.InsertColumn(0, _T("姓名"), LVCFMT_LEFT, 60,-1);
7、 按F5调试程序,你可以发现如下的窗口:
8、 此处由于是在WINDOWS7的系统上的结果,所以可能跟XP下面的视觉效果有点不同。而且大家可以发现,姓名这一栏的宽度是可以调整的。
9、 下面我们来看下刚才加进去的那一行代码:
m_ListCtrl.InsertColumn(0, _T("姓名"), LVCFMT_LEFT, 60,-1);
m_ListCtrl就是我们刚刚加入的成员变量,也即是个CListCtrl类的变量,其实也可以理解为ClistCtrl类的一个对象;
InsertColumn();其实为ClistCtrl类的成员函数,具体内容如下:
CListCtrl::InsertColumn
int InsertColumn(int nCol,const LVCOLUMN* pColumn)
int InsertColumn(int nCol,
LPCTSTR lpszColumnHeading,
int nFormat = LVCFMT_LEFT,
int nWidth = -1,
int nSubItem = -1
)
返回值:如果成功,则返回新建列的索引值,否则为-1。
参数:
nCol
新建列的索引值。
pColumn
包含新建列属性的LVCOLUMN结构的地址。
lpszcolumnHeading
包含列标题的字符串的地址。
nFormat
指定列对齐方式的整数。它为下列值之一:LVCFMT_LEFT,LVCFMT_RIGHT或LVCFMT_CENTER。
nWidth
以像素为单位的列宽。如果该参数为-1,那么没有设置列宽。
nSubItem
与列相关联的子项的索引。如果该参数为-1,那么没有子项与列相关。
说明:在列表视图控件中新插入一列。
10、 其实在
int InsertColumn(int nCol,
LPCTSTR lpszColumnHeading,
int nFormat = LVCFMT_LEFT,
int nWidth = -1,
int nSubItem = -1
)
中,可以直接传递给函数四个值,最后一个值不用管,也可以达到同样的效果。
- 一步一步学List Control控件的用法(第一步)----创建第一列
- 一步一步学List Control控件的用法(第一步)----创建第一列
- 一步一步学List Control控件的用法(第二步)----创建第一行
- 一步一步学List Control控件的用法(第二步)----创建第一行
- 一步一步学List Control控件的用法(第三步)----设置风格
- 一步一步学List Control控件的用法(第三步)----设置风格
- 一步一步学Edit Control控件的用法
- 列表控件 list control的用法
- List Control的用法:
- list control的用法
- list control的用法
- list control的用法
- list control的用法(一)
- list control的用法(二)
- 一步一步学lucene——(第一步:概念篇)
- Vc控件用法总结之List Control
- Vc控件用法总结之List Control
- Vc控件用法总结之List Control
- 高斯模糊效果实现方案及性能对比
- 精确获取时间(QueryPerformanceCounter)
- 让键盘消失的的4种方法
- UIUC大学之Coursera课程Text Retrieval and Search Engines:Week 4 Practice Quiz
- Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面
- 一步一步学List Control控件的用法(第一步)----创建第一列
- log4j源码解析
- webview缓存及跳转时截取url地址、监听页面变化
- Android Service更多的技巧
- Android 图片高斯模糊处理
- 《python》学习笔记(Day8),采用MVC模式的Web应用例子(续+)
- 8 个最优秀的 Android Studio 插件
- MAC下查找所有指定名字的文件并执行相应命令
- iOS开发系列--UITableView全面解析