📄 gridstatic.h
字号:
#pragma once
// CGridStatic
class CDynamicData;
class CGridStatic : public CStatic
{
DECLARE_DYNAMIC(CGridStatic)
public:
CGridStatic();
virtual ~CGridStatic();
protected:
DECLARE_MESSAGE_MAP()
public:
void UpdateGridData();
public:
void SetTimeWidth( DWORD dwVal );
void SetTemperatureRange( int leftVal, int rightVal, int width );
void SetDisplayMode( int DisplayMode );
void SetTimeRange( DWORD leftVal, DWORD rightVal );
void SetMainFrmae( CDynamicData* pData )
{
m_pDynamicData = pData;
}
void SetHistoryData( float* pTempertureArray, unsigned int TempCount )
{
m_pTemperatureArray = pTempertureArray;
m_TemperatureCount = TempCount;
}
void SetHighLowTemperature( unsigned int Low, unsigned int High )
{
m_HighTempIndex = High;
m_LowTempIndex = Low;
}
void SetStartTime( char* pStartTime )
{
m_StartTime[0] = pStartTime[0];
m_StartTime[1] = pStartTime[1];
m_StartTime[2] = pStartTime[2];
m_StartTime[3] = pStartTime[3];
m_StartTime[4] = pStartTime[4];
m_StartTime[5] = pStartTime[5];
}
void SetLimit( float LowerLimit, float UpperLimit )
{
m_LowerLimit = LowerLimit;
m_UpperLimit = UpperLimit;
}
void SetWarnTemperture( float WarnHigh, float WarnLow )
{
m_WarnTemperature1 = WarnHigh;
m_WarnTemperature2 = WarnLow;
}
//void AddItem( float temperature, DWORD dw)
protected:
void DrawGrid( HDC hDC, RECT* pRect );
void DrawCoordinate( HDC hDC, RECT* pRect );
void DrawHistoryLine( HDC hDC, RECT* pRect );
POINT TemperatureToPoint( float Temperature, DWORD dwTime );
void TemperatureColToPointCol();
void DrawDynamicFrame( HDC hDC, CDynamicData* pMainFrame, RECT* pRect );
public:
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnPaint();
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
protected:
COLORREF m_BKColor;
COLORREF m_CoordinateBKColor;
COLORREF m_GridColor;
COLORREF m_LineColor;
int m_nLineCount;
int m_nStartPos;
int m_TemperatureLeft; //
int m_TemperatureRight;
int m_TemperatureWidth; // 每格代表多少度
DWORD m_TimeLeft; // millisecond
DWORD m_TimeRight;
DWORD m_TimeWidth; // 每像数代表多少毫秒, 当m_DisplayMode为0 时有效
int m_DisplayMode; // 0: static, 1: dynamic, 2: auto fix
char m_StartTime[6]; // 年 月 日 时 分 秒
unsigned int m_StartTemperature;
unsigned int m_TemperatureCount;
float* m_pTemperatureArray;
float m_WarnTemperature1; // 温度上限
float m_WarnTemperature2; // 温度下限
unsigned int m_HighTempIndex;
unsigned int m_LowTempIndex;
float m_LowerLimit; // 用红线画出 温度上下限
float m_UpperLimit;
int m_Zero; // 0度的坐标,像素值
float m_DynamicWidth; //
float m_Height;
CDynamicData* m_pDynamicData;
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -