📄 aneasyvaluectrl.h
字号:
#pragma once
#include "atltypes.h"
// AnEasyValueCtrl.h : CAnEasyValueCtrl ActiveX 控件类的声明。
// CAnEasyValueCtrl : 有关实现的信息,请参阅 AnEasyValueCtrl.cpp。
class CAnEasyValueCtrl : public COleControl
{
DECLARE_DYNCREATE(CAnEasyValueCtrl)
// 构造函数
public:
CAnEasyValueCtrl();
// 重写
public:
virtual void OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
virtual void DoPropExchange(CPropExchange* pPX);
virtual void OnResetState();
// 实现
protected:
~CAnEasyValueCtrl();
DECLARE_OLECREATE_EX(CAnEasyValueCtrl) // 类工厂和 guid
DECLARE_OLETYPELIB(CAnEasyValueCtrl) // GetTypeInfo
DECLARE_PROPPAGEIDS(CAnEasyValueCtrl) // 属性页 ID
DECLARE_OLECTLTYPE(CAnEasyValueCtrl) // 类型名称和杂项状态
// 消息映射
DECLARE_MESSAGE_MAP()
// 调度映射
DECLARE_DISPATCH_MAP()
afx_msg void AboutBox();
// 事件映射
DECLARE_EVENT_MAP()
// 调度和事件 ID
public:
enum {
dispidABeep = 5L, eventidValueIsMax = 1L, dispidCurValue = 4,
dispidMinValue = 3,
dispidMaxValue = 2,
dispidTextAlign = 1
};
protected:
void OnTextAlignChanged(void);
LONG m_TextAlign;
LONG GetMaxValue(void);
void SetMaxValue(LONG newVal);
LONG GetMinValue(void);
void SetMinValue(LONG newVal);
LONG GetCurValue(void);
void SetCurValue(LONG newVal);
public:
long m_MaxValue;
long m_MinValue;
long m_CurValue;
CSize m_szValueText;
CRect m_rcBar;
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
protected:
void ValueIsMax(LONG* pMaxValue)
{
FireEvent(eventidValueIsMax, EVENT_PARAM(VTS_PI4), pMaxValue);
DoClick(); //调用DoClick常用方法
Beep(); //调用ABeep自定义方法
}
void Beep(void);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -