1,头文件实现:
#if !defined(AFX_LISTCTRLEX_H__FD8138BA_775E_4491_ACCA_B5265EC70DBC__INCLUDED_)
#define AFX_LISTCTRLEX_H__FD8138BA_775E_4491_ACCA_B5265EC70DBC__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
//
// ListCtrlEx.h : header file
//
/
// CListCtrlEx window
//
// 1,排序支持:按字符串不区分大小写顺序;必须预先设置唯一 lparam 参数。
// 2,删除支持:快捷键“Delete”删除选定条目(多选)。
//
class CListCtrlEx : public CListCtrl
{
public:
BOOL EnableFunc(DWORD dwMask); // 打开功能(使生效,默认不开任何功能)
public:
static const DWORD funcAll; // 功能掩码:所有功能 0xffffffff
static const DWORD funcSort; // 功能掩码:排序支持 0x00000001
static const DWORD funcDelete; // 功能掩码:删除支持 0x00000002
protected:
// 排序的比较函数
static int CALLBACK CompareByParam(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort);
// 成员变量:功能掩码(默认不开任何功能)
DWORD m_dwFuncMask;
// 成员变量:记录排序的升降序
BOOL m_bAscending;
// 成员变量:记录排序的列
int m_iSortCol;
// Construction
public:
CListCtrlEx();
// Attributes
public:
// Operations
public:
//