#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 消息处理程序