⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 kline.h

📁 股票控件源代码
💻 H
字号:
// Kline.h: interface for the CKline class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_KLINE_H__830B5875_C427_4963_A3EF_174BB2CE1967__INCLUDED_)
#define AFX_KLINE_H__830B5875_C427_4963_A3EF_174BB2CE1967__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "dcl_graph.h"
#include "StaticElement.h"
#include "KlineNode.h"
//股票系统的K线

typedef CList<CKlineNode *,CKlineNode *&> CKlineNodeList;
class DECL_GRAPH CKline : public CStaticElement  
{
public:
	CKline();
	virtual ~CKline();
public:
	long m_KL_COLOR,m_KS_COLOR,m_KM_COLOR,m_KM1_COLOR,m_KM2_COLOR;
	CRect m_Rect;
	double GetLow(){return m_dLow;};
    double GetHigh(){return m_dHigh;};
    double m_dUnit,m_dDisValue;//纵轴、横轴单元
	CKlineNode *m_pHighNode,*m_pLowNode;//最高点、最低点
private:
	CKlineNodeList *m_pNodeList,*m_pDisplayList;
	double m_dLow;
	double m_dHigh;

	
public:

	CKlineNodeList *GetNodeList(){return m_pNodeList;};
	int GetNodeCount(){return m_pNodeList->GetCount();};
    CKlineNodeList *GetDisplayList(){return m_pDisplayList;};
	int GetDisplayCount(){return m_pDisplayList->GetCount();};
	BOOL AddNode(CKlineNode *pKlineNode);
	BOOL DelCurNode();
	void Rebuild();
	CKlineNode *GetLastNode();
	//添加结点
	CKlineNode *AddKlineNode(CScn *pScn,int _date,
							double _open,
							double _high,
							double _low,
							double _close,
							double _kl,
							double _ks,
							double _km,
							double _km1,
							double _km2,
							int    _ai);
   //手动输入
   CKlineNode *InputKlineNode(double scale,int _date,double _open,double _high,double _low,double _close);
public:
	//根据矩形框大小初始化可见的K线结点链表
	void LoadDisplayList(CRect rc,CScn *pScn);
	//绘制图元
	virtual void      Draw(CDC *pDC,CScn *pScn);
	virtual void      Draw(CDC *pDC,CScn *pScn,transf tran);
	//得到矩形框
	virtual void GetRect(CDot &lefttop,CDot &rightbottom);
	virtual BOOL Pick(position&	pe,position& ret_pos,double& dist,double pick_tol,int &type,int &ext_type);
protected:
	//当添加完成一个结点的添加
	virtual void OnLoadedNode(CDC *pDC,CScn *pScn,CKlineNode *pNode);
friend class CKlineNode;
};

#endif // !defined(AFX_KLINE_H__830B5875_C427_4963_A3EF_174BB2CE1967__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -