ClistCtrl中常用的函数:
1. InsertItem在MSDN中的函数原型如下
intInsertItem(constLVITEM*pItem );
int InsertItem( int nItem, LPCTSTR lpszItem );
int InsertItem( int nItem, LPCTSTR lpszItem, intnImage );
int InsertItem( UINT nMask, int nItem, LPCTSTRlpszItem, UINT nState, UINTnStateMask, int nImage, LPARAMlParam );
一般我们用的比较多的时第2种和第三种,其中第三种时建立一个带有头标的项
nItem: 控件中行的索引
lpszItem :控件头的名字
实例:
void CClistDlg::OnButton1()
{
// TODO: Add your control notification handler code here
int nItem = m_CListCtrl.GetItemCount(); //获得编辑框当前的行
m_CListCtrl.InsertItem(0,"a"); //A
m_CListCtrl.InsertItem(1,"b"); //B
m_CListCtrl.InsertItem(2,"c"); //C
m_CListCtrl.InsertItem(3,"d"); //D
m_CListCtrl.InsertItem(1,"g"); //E
m_CListCtrl.SetItemText(0,1,"e"); //F
// m_CListCtrl.InsertItem(nItem,"gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg");
m_CListCtrl.SetItemText(1,1,"f"); //G
}
使用IsertItem()时,A、B、C、D行因第一个参数依次增加,显示向下增加行依次显示;
当E行和A行第一个参数相同时,显示的内容在A行之上,即在A行所定的项目向上插入了一行,变成了向上增加行显示。
运行此程序显示如下:
BOOLSetItemText( int nItem, int nSubItem, LPCTSTR lpszText); |
2.
Parameters
nItem
Index of the item whose text is to be set.
nSubItem
Index of the subitem, or zero to set the item label.
lpszText
Pointer to a string that contains the new item text.
Return Value
Nonzero if successful; otherwise zero.
SetItemText(P1,P2,P3)
P1为主项项号,相当于行号;
P2为子项项号,相当于列号;
P3为在前两个参数确定的位置显示的字符串;
该函数必须配合InsertItem()使用,单独使用无法显示内容。
3. GetItemCount();
GetItemCount();得到当前编辑列表框的项目数,返回项目个数。
使用实例:
Int nItem;
nItem= m_CListCtrl. GetItemCount();
///
4. DeleteItem(int nItem);
DeleteItem(int nItem);
用途,删除参数所表示项的内容,包括主项和子项;
5. DeleteAllItems();
DeleteAllItems();
用途:删除编辑列表中的所有内容。