📄 myroundsliderctrl2.h
字号:
#if !defined(AFX_MYROUNDSLIDERCTRL2_H__A35BFDAA_97AA_42F7_8A79_3D0DDE1961FB__INCLUDED_)
#define AFX_MYROUNDSLIDERCTRL2_H__A35BFDAA_97AA_42F7_8A79_3D0DDE1961FB__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// MyRoundSliderCtrl2.h : header file
//
#define WM_CHANGEVALUE WM_USER + 10
/////////////////////////////////////////////////////////////////////////////
// CMyRoundSliderCtrl2 window
class CMyRoundSliderCtrl2 : public CSliderCtrl
{
// Construction
public:
CMyRoundSliderCtrl2();
// Attributes
public:
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CMyRoundSliderCtrl2)
protected:
virtual void PreSubclassWindow();
//}}AFX_VIRTUAL
// Implementation
public:
void SetCurrentValue(double dCurrentValue);
void ChangeSize();
void SetPointerColor(COLORREF pointerClr);
void SetScaleColor(COLORREF scaleClr);
void SetBkClr(COLORREF bkClr);
void SetTextColor(COLORREF textClr);
void SetScaleTextColor(COLORREF ScaleTextClr);
void SetPlusValue(double dPlusValue);
void SetMinAngle(int nMinAngle);
void SetMinValue(double dMinValue);
void SetMaxAngle(int nMaxAngle);
void SetMaxValue(double dMaxValue);
double GetCurrentValue();
virtual ~CMyRoundSliderCtrl2();
// Generated message map functions
protected:
void Init();
//变量定义****
//对客户**(即该倥件的使用者)
double m_dMaxValue;//客户指定最大值
double m_dMinValue;//客户指定最小值
double m_dPlusValue;//增益
double m_dCurrentValue;//当前值
//对程序设计者**
int m_nMaxAngle;//终止角度(最大角度)
int m_nMinAngle;//起始角度(最小角度)
int m_nDivNum; //总格数
int m_nAngleDiv;//每小格度数
int m_nCurrentAngle;//当前位置
//绘图环境
CDC m_memDC;
CBitmap m_memBitmap;
CBitmap* m_pOldBitmap;
//绘图变量
CRect m_clientRect;//客户区矩形
CRgn m_rgn;//客户区形状
int m_nBigRadius;//大边框半径
int m_nSmallRadius;//小圆半径
int m_nPointerRadius;//指针半径
CPoint m_pointerCenterPoint;
CPoint m_centerPoint;
BOOL m_bMouseMove;
BOOL m_bLButtonDown;
//颜色
COLORREF m_scaleTextClr;//刻度上指示值颜色
COLORREF m_textClr;//当前值颜色
COLORREF m_bkClr;//按钮颜色
COLORREF m_scaleClr;//刻度颜色
COLORREF m_pointerClr;//指针颜色
//end 变量定义****
//{{AFX_MSG(CMyRoundSliderCtrl2)
afx_msg void OnPaint();
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
afx_msg void OnSize(UINT nType, int cx, int cy);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_MYROUNDSLIDERCTRL2_H__A35BFDAA_97AA_42F7_8A79_3D0DDE1961FB__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -