📄 digitalctl.h
字号:
#if !defined(AFX_DIGITALCTL_H__2AE8E157_60E9_4EFF_A1FD_A20925B3A0B8__INCLUDED_)
#define AFX_DIGITALCTL_H__2AE8E157_60E9_4EFF_A1FD_A20925B3A0B8__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DigitalCtl.h : Declaration of the CDigitalCtrl ActiveX Control class.
/////////////////////////////////////////////////////////////////////////////
// CDigitalCtrl : See DigitalCtl.cpp for implementation.
class CDigitalCtrl : public COleControl
{
DECLARE_DYNCREATE(CDigitalCtrl)
// Constructor
public:
CDigitalCtrl();
BOOL m_bEditMode;
BOOL m_bError;
BYTE m_id;
CString m_Dispstr;
CString m_Format;
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CDigitalCtrl)
public:
virtual void OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
virtual void DoPropExchange(CPropExchange* pPX);
virtual void OnResetState();
//}}AFX_VIRTUAL
void OnShowProperties();
// Implementation
protected:
~CDigitalCtrl();
DECLARE_OLECREATE_EX(CDigitalCtrl) // Class factory and guid
DECLARE_OLETYPELIB(CDigitalCtrl) // GetTypeInfo
DECLARE_PROPPAGEIDS(CDigitalCtrl) // Property page IDs
DECLARE_OLECTLTYPE(CDigitalCtrl) // Type name and misc status
HBITMAP m_hBitmap[13];
UINT m_w;
UINT m_h;
BITMAP m_bm;
BYTE m_flag;
BYTE m_nSetTime;
float m_f;
void Output(UINT digit, UINT pos);
void SetColor(BYTE flag);
CMapStringToOb m_mapChannelInfo;
BOOL m_HaveLink;
int m_FlashTime;
// Message maps
//{{AFX_MSG(CDigitalCtrl)
afx_msg void OnTimer(UINT nIDEvent);
afx_msg void OnClose();
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
afx_msg void OnProperty();
afx_msg void OnChannel();
afx_msg void OnDaystat();
afx_msg void OnHourstat();
afx_msg void OnStatus();
afx_msg void OnRegulate();
afx_msg void OnControl();
afx_msg void OnAlarmsetting();
afx_msg void OnChannelinfo();
afx_msg void OnChannelsetting();
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
afx_msg void OnConfirm();
afx_msg void OnHistorydata();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
// Dispatch maps
//{{AFX_DISPATCH(CDigitalCtrl)
short m_nBit;
afx_msg void OnNBitChanged();
afx_msg void Init(LPCTSTR param);
afx_msg BSTR GetParameter();
afx_msg void SetFloatValue(DATE Time, LPCTSTR Channel, float Value);
afx_msg void SetFloatAlarm(DATE Time, LPCTSTR Channel, short Level, float Value);
afx_msg void SetAlarmConfirm(DATE Time, LPCTSTR Channel, LPCTSTR ConfirmOp);
afx_msg void SetID(short id);
afx_msg void SetEditMode(BOOL bEdit);
afx_msg void SetChannel(VARIANT FAR* pChannelParam);
afx_msg void HaveLink(BOOL haveLink);
afx_msg void SetError(DATE Time, LPCTSTR Channel, short Value, LPCTSTR strError);
//}}AFX_DISPATCH
DECLARE_DISPATCH_MAP()
afx_msg void AboutBox();
// Event maps
//{{AFX_EVENT(CDigitalCtrl)
void FireLBDown(short x, short y)
{FireEvent(eventidLBDown,EVENT_PARAM(VTS_I2 VTS_I2), x, y);}
void FireDBClick(short ID)
{FireEvent(eventidDBClick,EVENT_PARAM(VTS_I2), ID);}
void FireChannelReq(short ID, LPCTSTR Prompt)
{FireEvent(eventidChannelReq,EVENT_PARAM(VTS_I2 VTS_BSTR), ID, Prompt);}
void FireChannelInfo(short ID, LPCTSTR ChannelID, short InforType)
{FireEvent(eventidChannelInfo,EVENT_PARAM(VTS_I2 VTS_BSTR VTS_I2), ID, ChannelID, InforType);}
void FireChannelDayStat(short ID, LPCTSTR ChannelID)
{FireEvent(eventidChannelDayStat,EVENT_PARAM(VTS_I2 VTS_BSTR), ID, ChannelID);}
void FireChannelHourStat(short ID, LPCTSTR ChannelID)
{FireEvent(eventidChannelHourStat,EVENT_PARAM(VTS_I2 VTS_BSTR), ID, ChannelID);}
void FireControl(short ID, LPCTSTR ChannelID)
{FireEvent(eventidControl,EVENT_PARAM(VTS_I2 VTS_BSTR), ID, ChannelID);}
void FireRegulate(short ID, LPCTSTR ChannelID)
{FireEvent(eventidRegulate,EVENT_PARAM(VTS_I2 VTS_BSTR), ID, ChannelID);}
void FireConfirm(short ID, LPCTSTR ChannelID)
{FireEvent(eventidConfirm,EVENT_PARAM(VTS_I2 VTS_BSTR), ID, ChannelID);}
void FireChannelHistoryData(short ID, LPCTSTR ChannelID)
{FireEvent(eventidChannelHistoryData,EVENT_PARAM(VTS_I2 VTS_BSTR), ID, ChannelID);}
//}}AFX_EVENT
DECLARE_EVENT_MAP()
// Dispatch and event IDs
public:
CString StrCut(CString &str);
void SetFloat(float f);
enum {
//{{AFX_DISP_ID(CDigitalCtrl)
dispidNBit = 1L,
dispidInit = 2L,
dispidGetParameter = 3L,
dispidSetFloatValue = 4L,
dispidSetFloatAlarm = 5L,
dispidSetAlarmConfirm = 6L,
dispidSetID = 7L,
dispidSetEditMode = 8L,
dispidSetChannel = 9L,
dispidHaveLink = 10L,
dispidSetError = 11L,
eventidLBDown = 1L,
eventidDBClick = 2L,
eventidChannelReq = 3L,
eventidChannelInfo = 4L,
eventidChannelDayStat = 5L,
eventidChannelHourStat = 6L,
eventidControl = 7L,
eventidRegulate = 8L,
eventidConfirm = 9L,
eventidChannelHistoryData = 10L,
//}}AFX_DISP_ID
};
STDMETHODIMP GetPages(CAUUID *pPages);
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_DIGITALCTL_H__2AE8E157_60E9_4EFF_A1FD_A20925B3A0B8__INCLUDED)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -