CListCtrl控件中InsertItem和SettItemtext函数的用法简介

本文详细介绍了在CListCtrl控件中使用InsertItem和SetItemText函数的方法。首先解释了InsertItem的多个重载形式,并展示了如何通过创建CImageList对象设置图标。接着,解释了SetItemText的功能,强调它用于向已插入的行添加数据。文中提供了代码示例,演示如何插入和设置多项数据,并提供了相关消息处理函数的用法,帮助开发者更好地理解和使用CListCtrl控件。
摘要由CSDN通过智能技术生成

        本人初次用CListCtrl控件的时候,对于 InsertItem和SetrtItemtext两个函数的作用始终不是太懂,比如如果不先调用InsertItem这个函数,后面的InsertItemtext函数写了,也不起作用.查了MSDN,也没有收获,经过有人点拔,才恍然大悟.今天将经验说一下,希望有共同爱好者少走弯路.

        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.Create(16,16,true,2,2);
 m_ImageList.Add(theApp.LoadIcon(IDR_MAINFRAME));
m_ListCtrl.SetImageList(&m_ImageList,LVSIL_SMALL);
这样,控件中的每一行的开头就有一个应用程序图标
     

      现在转入正题,先介绍一下INSERTITEM个个参数的意义
     nItem:    控件中行的索引
     lpszItem :  控件头的名字
     .........................................................................................................................................................................................................
     SettItemtext函数的原型
    BOOL SetItemText( int nItem, int nSubItem, LPTSTR lpszText );
    ******************注意这个函数中的参数
nItem就是INSERTITEM中的NITEM,
    也就是说InsertItem是向控件声请一行来放数据,记住只是声请,那么方数据的工作就又SETITEMTEXT来实现
    举例如下:

     CListCtrl m_listctrl;

     m_listctrl = new ClistCtrl();

     m_listctrl.Creae(WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT|LVS_EDITLABELS
  ,bigRect,this,IDC_LIST1
     );
    
     m_listctrl.InsertItem(0,"01");

     m_SetItemtext(0,1,"1");

     m_SetItemtext(0,2,"2");
     ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
     至于要添多少多少个数据,就由你的控件由多少列了

     获得可以这样的道  int columns= m_listctr.GetHeaderCtrl()->GetItemCount();

     获得可以这样的道 int   rows= m_listctrl.GetItemCount();
     
      下面附一个本人学习的实例
  // DataView.cpp : implementation of the CDataView class
//

#include "stdaf

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值