www.pudn.com > CMyChartView_ocx.rar > CMyChartViewCtl.h
#if !defined(AFX_CMYCHARTVIEWCTL_H__A26E336E_FFC2_49AE_9528_D5F1F06E7C31__INCLUDED_)
#define AFX_CMYCHARTVIEWCTL_H__A26E336E_FFC2_49AE_9528_D5F1F06E7C31__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// CMyChartViewCtl.h : Declaration of the CCMyChartViewCtrl ActiveX Control class.
/////////////////////////////////////////////////////////////////////////////
// CCMyChartViewCtrl : See CMyChartViewCtl.cpp for implementation.
class CCMyChartViewCtrl : public COleControl
{
DECLARE_DYNCREATE(CCMyChartViewCtrl)
// Constructor
public:
CCMyChartViewCtrl();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CCMyChartViewCtrl)
public:
virtual void OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
virtual void DoPropExchange(CPropExchange* pPX);
virtual void OnResetState();
//}}AFX_VIRTUAL
// Implementation
protected:
int mi_CurveCount; //曲线条数 初始化为0
COLORREF m_crLinePoint[10]; //曲线颜色
CString m_crLineTitleText[10]; //曲线标题
CPen m_crLinePen[10]; //曲线画笔
COLORREF m_AxisColor;
COLORREF m_crBackground;//曲线背景颜色 初始化为黑色
int mi_MinX; //X轴最小值
int mi_MaxX; //X轴最大值
int mi_MinY; //Y轴最小值
int mi_MaxY; //Y轴最大值
// 用户需要的范围
float mf_MinX; //X轴最小值
float mf_MaxX; //X轴最大值
float mf_MinY; //Y轴最小值
float mf_MaxY; //Y轴最大值
float kx,ky; //x,y轴比例
float sx[10],sy[10]; //初试值
CPen m_PenCoordinate; //坐标轴画笔
CPen m_PenGrid; //网格画笔
int m_XgridCount; //栅格数量 初始化为10
int m_YgridCount; //栅格数量 初始化为4
CFont m_GridTitle; //
CFont m_cfontTitleText; //标题字体
COLORREF m_crTitleText; //标题文本颜色
CString m_strTitleText; //标题文本
~CCMyChartViewCtrl();
DECLARE_OLECREATE_EX(CCMyChartViewCtrl) // Class factory and guid
DECLARE_OLETYPELIB(CCMyChartViewCtrl) // GetTypeInfo
DECLARE_PROPPAGEIDS(CCMyChartViewCtrl) // Property page IDs
DECLARE_OLECTLTYPE(CCMyChartViewCtrl) // Type name and misc status
// Message maps
//{{AFX_MSG(CCMyChartViewCtrl)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
// Dispatch maps
//{{AFX_DISPATCH(CCMyChartViewCtrl)
afx_msg void SetAxisRang(float minX, float maxX, float minY, float maxY);
afx_msg void SetAxisColor(OLE_COLOR color);
afx_msg void SetBgrnd(OLE_COLOR bgrnd);
afx_msg void SetGridCount(short mx, short my);
afx_msg void SetTitleText(LPCTSTR strTitle);
afx_msg void AddChartCutline(LPCTSTR szName, OLE_COLOR crColor, short nLineWidth);
afx_msg void AddChartData(short nIndex, float fValueX, float fValueY);
//}}AFX_DISPATCH
DECLARE_DISPATCH_MAP()
// Event maps
//{{AFX_EVENT(CCMyChartViewCtrl)
//}}AFX_EVENT
DECLARE_EVENT_MAP()
// Dispatch and event IDs
public:
enum {
//{{AFX_DISP_ID(CCMyChartViewCtrl)
dispidSetAxisRang = 1L,
dispidSetAxisColor = 2L,
dispidSetBgrnd = 3L,
dispidSetGridCount = 4L,
dispidSetTitleText = 5L,
dispidAddChartCutline = 6L,
dispidAddChartData = 7L,
//}}AFX_DISP_ID
};
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_CMYCHARTVIEWCTL_H__A26E336E_FFC2_49AE_9528_D5F1F06E7C31__INCLUDED)