CListCtrl 类中InsertItem, InsertColumn, SetItemText 的使用

来源:互联网 发布:suse yast 安装软件 编辑:程序博客网 时间:2024/06/02 19:41

1.InsertColumn 


 函数功能:在报告模式下插入一列 

函数原型:

int InsertColumn(int nCol, const LVCOLUMN* pColumn); 

int InsertColumn(int nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT_LEFT, int nWidth = -1, int nSubItem = -1); 

参数:

 nCol表示要插入列的列号。 

pColumn 为新建列属性的LVCOLUMN结构的地址。  

对于第二种函数重载,参数lpszcolumnHeading 为列标题的字符串的地址,所以可以使用一个字符串,比如 "姓名"。  

nFormat 指定列对齐方式的整数,缺省值是左对齐。它可以为下列值之一:LVCFMT_LEFT,LVCFMT_RIGHT或LVCFMT_CENTER。  

nWidth 以像素为单位的列宽。缺省值为-1,表示没有设置列宽。  

nSubItem 与列相关联的子项的索引。缺省值为-1,表示没有子项与列相关。

 CListCtrl控件中InsertItem和SetItemText函数

 2.   InsertItem   

InsertItem在MSDN中的函数原型如下         

int InsertItem( const LVITEM* pItem );       

int InsertItem( int nItem, LPCTSTR lpszItem );        

int InsertItem( int nItem, LPCTSTR lpszItem, int nImage );        

int InsertItem( UINT nMask, int nItem, LPCTSTR lpszItem, UINT nState,UINT nStateMask, int nImage, LPARAM lParam );      

 一般我们用的比较多的时第2种和第三种,其中第三种时建立一个带有头标的项,要调用第三个,可以先声明一个CImageList对象 m_ImageList

m_ImageList.Create(16,16,true,2,2); 

 m_ImageList.Add(theApp.LoadIcon(IDR_MAINFRAME));

 m_ListCtrl.SetImageList(&m_ImageList,LVSIL_SMALL); 

这样,控件中的每一行的开头就有一个应用程序图标              

参数      

nItem:    控件中行的索引      

lpszItem : 控件头的名字  

     ...............................................................................................


3.SetItemText函数

原型      

BOOL SetItemText( int nItem, int nSubItem, LPTSTR lpszText );      

这个函数中的参数nItem就是InserItem中的nItem,也就是说InsertItem是向控件【声请】一行来放数据,存放数据的工作etItemText函数来实现

0 0