1 CListCtrl的用法
列表控件是非常有用的控件之一,它用来在不同的格式中显示数据,如:Icon view,report view,simple list等, 这片文章描述了怎么使用CListCtrl来创建report views.在使用任何MFC中的控件资源之前,它们必须关联一个类.使用类向导的Member Variable表来为列表控件创建一个变量.这个CListCtrl的变量将被用来后来的例子中.在列表属性下的风格表中确定选择View为Report.同样, stdafx.h文件中也要包含afxcmn.h头文件.
在列表控件中插入专栏
以下是用来插入专栏函数InsertColumn的原形:
int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat= LVCFMT_LEFT, int nWidth= -1, int nSubItem= -1 );
nCol:这是指定专栏的位置,从0开始.
lpszColumnHeading :这上字符串将被作为标题行为这个列表控件.
nFormat :队列. LVCFMT_LEFT 左边, LVCFMT_RIGHT 右边LVCFMT_CENTER中间.
nWidth :像素宽度.
看下面InsertColumn 函数简单用法.
m_ListVw.InsertColumn(0, "Heading 1",LVCFMT_LEFT, 100);
m_ListVw.InsertColumn(1, "Heading 2",LVCFMT_LEFT, 120);
这里添加了两个标题为Heading1和 Heading2.列表控件.
在列表中添加行:
为单一专栏列表加入行:
如果控件有一个行,则直接加入行.如果满了则可以调用InsertItem函数如下:
m_ListVw.InsertItem(0,"Item1");
m_ListVw.InsertItem(1,"Item2");
第一个参数是列表行数.这个数是从0开始, InsertItem函数返回一个指数,能被其它函数调用来操作row.
在多专栏的列表中加入行:
这要用到两个函数:InsertItem , SetItemText.
int nIndex = m_ListVw.InsertItem(0,"Item1");
m_ListVw.SetItemText(nIndex,1,"Item12");
m_ListVw.SetItemText(nIndex,2,"Item12");
这里有更多的方法在列表中加入消息,,但这可能是最简单的,SetItemText函数同样被用来修改单元内的数据.
在列表中删除行.
如果你想在列表中删除所有的行,可以用DeleteAllItems,如果要想删除某一行则可以用DeleteItem,下面是简单的代码
m_ListVw.DeleteItem(2);
上面的代码是删除了列表的第三行.这个参数是从0开始的.
在列表行中读出消息.
这条款是默认从行中正确的读出消息的
int nSelected = m_ListVw.GetSelectionMark();
CString strText = m_ListVw.GetItemText(nSelected, 0);
从第一人专栏的nSelected行中读出信息.
以上是一部分介绍,如需要完整的资料或者如不符合您的要求,请联系技术人员qq:242219979咨询
上一篇:计算机远程通信和远程控制_外文翻译
下一篇:vc++ MFC中的非模式对话框