📄 splistviewctrl.h
字号:
//////////////////////////////////////////////////////////////////////
// Filename: SPListViewCtrl.h
// Description: The list view control a-la "Programs" list
// Created: July, 2002
// Author: Yaroslav Goncharov, yaroslav@softspb.com
// Comments: See www.smartphonedn.com for description
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SPLISTVIEWCTRL_H__AB7967B9_C7F9_4336_9260_8BD4CDA70009__INCLUDED_)
#define AFX_SPLISTVIEWCTRL_H__AB7967B9_C7F9_4336_9260_8BD4CDA70009__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "resource.h"
#define SPL_EXECUTE (WM_USER + 117)
class CSPListViewCtrl : public CWindowImpl<CSPListViewCtrl, CListViewCtrl>
{
public:
void SetFontColor(COLORREF crSelected, COLORREF crUnSelected);
void SetBkImage(UINT nID);
void SetFontSize(int nFontSize);
void InitControl();
DECLARE_WND_SUPERCLASS(NULL, CListViewCtrl::GetWndClassName())
BEGIN_MSG_MAP(CSPListViewCtrl)
MESSAGE_HANDLER(WM_DESTROY, OnDestroy)
MESSAGE_HANDLER(WM_KEYDOWN, OnKeyDown)
MESSAGE_HANDLER(WM_ERASEBKGND, OnEraseBkgnd)
REFLECTED_NOTIFY_CODE_HANDLER(NM_CUSTOMDRAW,OnCustomDraw)
END_MSG_MAP()
CSPListViewCtrl();
virtual ~CSPListViewCtrl();
void AddItem(LPCTSTR lpszText, int nIcon);
HWND Create(HWND hParent, _U_RECT rc);
void DeleteItem(int nIndex);
BOOL m_ImageTypeFlag;
BOOL m_MoreFlag;
public:
void UpdateNumeration();
void CreateItemFont();
LRESULT OnDestroy(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
SetFont(NULL);
::DeleteObject(m_hFont);
return 0;
}
LRESULT OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
int nIndex = wParam - '1';
if (wParam == VK_RETURN)
{
nIndex = GetSelectedIndex();
}
if (nIndex >= 0 && nIndex < GetItemCount())
{
SelectItem(nIndex);
::SendMessage(GetParent(), SPL_EXECUTE, nIndex, 0);
}
if ((wParam == VK_TLEFT) || (wParam == VK_TRIGHT)|| (wParam == VK_TUP) || (wParam == VK_TDOWN))
{
::SendMessage(GetParent(), WM_KEYDOWN, wParam, 0);
}
bHandled = FALSE;
return 0;
}
LRESULT OnEraseBkgnd(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
LRESULT OnCustomDraw(int idCtrl, LPNMHDR pnmh, BOOL& bHandled);
private:
HFONT m_hFont;
int m_nFontSize;
protected:
UINT m_nImage;
COLORREF m_crSelected,m_crUnSelected;
};
#endif // !defined(AFX_SPLISTVIEWCTRL_H__AB7967B9_C7F9_4336_9260_8BD4CDA70009__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -