MFC CListCtrl控件基本使用图解

Posted bcbobo21cn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC CListCtrl控件基本使用图解相关的知识,希望对你有一定的参考价值。

新建一个对话框工程;添加CListCtrl控件;为控件添加成员变量,如下图;

成员变量名称,m_ctrllist;

如下图,找到对话框初始化成员函数,转到定义,进入此函数代码;

找到 // TODO: 在此添加... 行,在后面添加为CListCtrl插入列和插入数据的代码;

我的VS有些问题,控件ID的定义有时是灰的,正常不会;

运行一下,结果如下;代码见后;

数据没有显示全;设置控件风格;打不开设计界面;VS出了问题;

手动在RC文件中添加一个风格,LVS_LIST,各风格之间是 | 的关系;WS_BORDER,是指的控件带边框;运行一下,结果如下;

添加一个LVS_REPORT风格就对了;

也可以设置文本色、文本背景色、背景色;

添加的代码如下;

        // TODO: 在此添加额外的初始化代码
	m_ctrllist.InsertColumn(0, _T("学号")); //添加列名
	//m_ctrllist.InsertColumn()
	m_ctrllist.InsertColumn(1, _T("姓名"));
	m_ctrllist.InsertColumn(2, _T("专业"));
	m_ctrllist.InsertColumn(3, _T("成绩"));

	m_ctrllist.SetColumnWidth(0, 80); //设置列宽
	m_ctrllist.SetColumnWidth(1, 80);
	m_ctrllist.SetColumnWidth(2, 150);
	m_ctrllist.SetColumnWidth(3, 90);

	m_ctrllist.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);//设置扩展格式,整行选择,网格线
	for (int i = 0; i<6; i++)
	{
		int n = m_ctrllist.InsertItem(0, _T("tw-1001"));
		m_ctrllist.SetItemText(n, 1, _T("renfeng"));
		m_ctrllist.SetItemText(n, 2, _T("computer science"));
		m_ctrllist.SetItemText(n, 3, _T("96"));
	}

	m_ctrllist.SetBkColor(RGB(255, 0, 0));
	m_ctrllist.SetTextBkColor(RGB(0, 250, 12));
	m_ctrllist.SetTextColor(RGB(0, 25, 250));

 

以上是关于MFC CListCtrl控件基本使用图解的主要内容,如果未能解决你的问题,请参考以下文章

MFC列表控件 CListCtr

MFC中CListCtrl控件怎样获取某列的列号

怎样在MFC中的列表视图控件CListCtrl显示信息?谢谢

mfc的ClistCtrl控件列的排序

MFC CListCtrl::SetItemText() 不工作

CListCtrl (MFC) 选择点击通过控制UNDERNEATH列表