📄 colorpickercb.h
字号:
#if !defined(AFX_COLORPICKERCB_H__C74333B7_A13A_11D1_ADB6_C04D0BC10000__INCLUDED_)
#define AFX_COLORPICKERCB_H__C74333B7_A13A_11D1_ADB6_C04D0BC10000__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
//
// Constants...
//
#define CCB_MAX_COLORS 16 // 列表的最大颜色数量
#define CCB_MAX_COLOR_NAME 16 // 颜色名称的最大字符数
struct SColorAndName
{
SColorAndName()
{
ZeroMemory( this, sizeof( SColorAndName ) ); //初始化结构
};
SColorAndName( COLORREF crColor, PCSTR cpColor )
{
ZeroMemory( this, sizeof( SColorAndName ) );
m_crColor = crColor; // 设置颜色值
strncpy( m_cColor, cpColor, CCB_MAX_COLOR_NAME ); // 设置颜色名称
};
COLORREF m_crColor; // 颜色值
char m_cColor[ CCB_MAX_COLOR_NAME ]; // 颜色名称
};
class CColorPickerCB : public CComboBox
{
// Construction
public:
CColorPickerCB();
// Attributes
private:
bool m_bInitialized; // 是否被初始化了
CString m_sColorName; // 被选择条目的颜色名称
static
SColorAndName ms_pColors[ CCB_MAX_COLORS ]; // 保存所有颜色值和颜色名的数组
private:
void Initialize( void ); // 初始化
public:
COLORREF GetSelectedColorValue( void ); // 获得选择颜色的值
CString GetSelectedColorName( void ); // 获得选择颜色的名称
void SetSelectedColorValue( COLORREF crClr );// 设定颜色名值
void SetSelectedColorName( PCSTR cpColor ); // 设定颜色名
bool RemoveColor( PCSTR cpColor ); // 将一种颜色删除
bool RemoveColor( COLORREF crClr ); // 将一种颜色删除
int AddColor( PCSTR cpNam, COLORREF crClr );// 插入一个新的颜色
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CColorPickerCB)
protected:
virtual void PreSubclassWindow();
//}}AFX_VIRTUAL
virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
// Implementation
public:
virtual ~CColorPickerCB();
// Generated message map functions
protected:
//{{AFX_MSG(CColorPickerCB)
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_COLORPICKERCB_H__C74333B7_A13A_11D1_ADB6_C04D0BC10000__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -