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

更新时间:2023-07-21 07:35:22 阅读: 评论:0

本人初次用CListCtrl控件的时候,对于 InrtItemSetrtItemtext两个函数的作用始终不是太懂,比如如果不先调用InrtItem这个函数,后面的InrtItemtext函数写了,也不起作用.查了MSDN,也没有收获,经过有人点拔,才恍然大悟.今天将经验说一下,希望有共同爱好者少走弯路.
        InrtItemMSDN中的函数原型如下
hepan        int InrtItem( const LVITEM* pItem );
      int InrtItem( int nItem, LPCTSTR lpszItem );
      int InrtItem( int nItem, LPCTSTR lpszItem, int nImage );
      int InrtItem( 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, intregretful nSubItemcantone, LPTSTR lpszText );
    ******************注意这个函数中的参数nItem就是INSERTITEM中的NITEM,
    也就是说InrtItem是向控件声请一行来放数据,记住只是声请,那么方数据的工作就又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.InrtItem(0,"01");
    m_SetItemtext(0,1,"1");
    m_SetItemtext(0,2,"2");
      ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    至于要添多少多少个数据英文论文润色,就由你的控件由多少列了
    山市译文获得可以这样的道 int columns= m_listctr.GetHeaderCtrl()->GetItemCount();
    获得可以这样的道bich int  rows= m_listctrl.GetItemCount();
     
      下面附一个本人学习的实例
  // DataView.cpp : implementation of the CDataView class
//
#include "stdafx.h"
#include "Data.h"
#include "DataDoc.h"
#include "DataView.h"
#include "EditDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/
////////////////////////////////////////////////////////////////////////////
// CDataView
IMPLEMENT_DYNCREATE(CDataView, CView)
BEGIN_MESSAGE_MAP(CDataView, CView)
//{{AFX_MSG_MAP(CDataView)
ON_COMMAND(IDM_USER, OnUr)
ON_COMMAND(IDM_UP, OnUp)
ON_COMMAND(IDM_DOWN, OnDown)
ON_COMMAND(IDM_EDIT, OnEdit)
ON_COMMAND(IDM_ADD, OnAdd)
ON_COMMAND(IDM_DELETE, OnDelete)
ON_COMMAND(IDM_SAVE, OnSave)
//}}AFX_MSG_MAP
// Standard printing commands
ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
ON_NOTIFY(NM_CLICK, IDC_LIST1, OnClickList1)
ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1)
ON_NOTIFY(NM_KILLFOCUS, IDC_LIST1, OnKillfocusList1)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDataView construction/destruction
CDataView::CDataView()
{
// TODO: add construction code here
上海新东方英语学校    m_nIndex = -1;
}
CDataView::~CDataView()
{
}
BOOL CDataView::PreCreateWindow(CREATESTRUCT& cs)
{investigater
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
return CView::PreCreateWindow(cs);
}
/////////////////////////////////////////////////////////////////////////////
// CDataView drawing
void CDataView::OnDraw(CDC* pDC)
{
CDataDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
}
/////////////////////////////////////////////////////////////////////////////
// CDataView printing
BOOL CDataView::OnPreparePrinting(CPrintInfo* pInfo)
{
// default preparation
return DoPreparePrinting(pInfo);
}
void CDataView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: add extra initialization before printing
}
void CDataView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: add cleanup after printing
}
/////////////////////////////////////////////////////////////////////////////
// CDataView diagnostics
#ifdef _DEBUG
either怎么读void CDataView::AsrtValid() const
{
CView::AsrtValid();
}
void CDataView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}
CDataDoc* CDataView::GetDocument() // non-debug version is inline
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CDataDoc)));
return (CDataDoc*)m_pDocument;
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CDataView message handlers
void CDataView::OnInitialUpdate()
{
CView::OnInitialUpdate();
2020年7月六级真题及答案

// TODO: Add your specialized code here and/or call the ba class
    CDC *dc = GetDC();
CRect rect;
this->GetClientRect(&rect);
    CString str = "加载数据库资源到列表中";
CSize sz = dc->GetTextExtent(str);
rect.right = sz.cx;
rect.bottom = sz.cy;
CStatic *state = new CStatic;
state->Create(str,WS_CHILD,rect,this);
    state->ShowWindow(SW_SHOW);
    this->ReleaDC(dc);

InitListCtrl(rect);
m_ImageList.Create(16,16,true,2,2);
m_ImageList.Add(theApp.LoadIcon(IDR_MAINFRAME));

}

本文发布于:2023-07-21 07:35:22,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/78/1108529.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:函数   控件   应用程序   数据   来放   参数   资源
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图