list封装

#pragma once


// CMyListCtrll

class CMyListCtrll : public CListCtrl
{
    DECLARE_DYNAMIC(CMyListCtrll)

public:
    CMyListCtrll();
    virtual ~CMyListCtrll();
    void InsertCol(DWORD dwCount, ...);
    void InsertOnLineItem(DWORD dwCount, ...);
    DWORD m_dwItemCount;
    DWORD m_dwColCount;
protected:
    DECLARE_MESSAGE_MAP()
};
// MyListCtrll.cpp : 实现文件
//

#include "stdafx.h"
#include "遍历进程.h"
#include "MyListCtrll.h"


// CMyListCtrll

IMPLEMENT_DYNAMIC(CMyListCtrll, CListCtrl)

CMyListCtrll::CMyListCtrll() :m_dwColCount(0), m_dwItemCount(0)
{

}

CMyListCtrll::~CMyListCtrll()
{
}


//插入列名
void CMyListCtrll::InsertCol(DWORD dwCount, ...)
{
    va_list argptr;
    va_start(argptr, dwCount);
    for (DWORD i = 0; i < dwCount; i++)
    {
        TCHAR* pStrTabName = va_arg(argptr, TCHAR*);
        DWORD dwWidth = va_arg(argptr, UINT);
        InsertColumn(i, pStrTabName, 0, dwWidth);
    }
    va_end(argptr);
    //m_dwColCount=dwCount;
}

//插入行元素
void CMyListCtrll::InsertOnLineItem(DWORD dwCount, ...)
{
    va_list argptr;

    va_start(argptr, dwCount);

    TCHAR* pStrItemName = va_arg(argptr, TCHAR*);

    InsertItem(m_dwItemCount, pStrItemName);
    for (DWORD i = 1; i < dwCount; i++)
    {
        TCHAR* pStrItemName = va_arg(argptr, TCHAR*);
        SetItemText(m_dwItemCount, i, pStrItemName);
    }
    va_end(argptr);
    m_dwItemCount++;
}
BEGIN_MESSAGE_MAP(CMyListCtrll, CListCtrl)
END_MESSAGE_MAP()



// CMyListCtrll 消息处理程序
让数据变得更安全!
原文地址:https://www.cnblogs.com/Alyoyojie/p/5304591.html