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)