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

📄 2dklinegraph.h

📁 我做的一个简单的读取*.day股票历史数据的显示成KLine的小例子。
💻 H
字号:
#pragma once
#include "atltypes.h"

#define GP_ONEMIN			1
#define GP_FIVEMIN			2
#define GP_FIFTEENMIN		3
#define GP_HALFHOUR			4
#define GP_ONEHOUR			5
#define GP_DAY				6
#define GP_WEEK				7
#define GP_QUARTER			8
#define GP_YEAR				9

struct _2DKLineGraphValues
{
	int index;
	__time64_t t;
	double minvalue;
	double maxvalue;
	double startvalue;
	double endvalue;
	double weekma;
	double halfmonthma;
	double monthma;
	double quarterma;
	int quantity;
	int turnover;
	struct _2DKLineGraphValues* prev;
	struct _2DKLineGraphValues* next;
};


class C2DKLineGraph
{
public:
	C2DKLineGraph(CSize size);
	~C2DKLineGraph(void);
private:
	CSize m_Size;
	int m_AnalysePeriod;
	int m_GraphValuesCount;
	
	double m_MaxValue;
	double m_MinValue;

	double m_DisplayMinValue;
	double m_DisplayMaxValue;
	__time64_t m_DisplayMinTime;
	__time64_t m_DisplayMaxTime;

	int m_XScale;
	int m_YScale;

	struct _2DKLineGraphValues* m_GraphValues;
public:
	void CreateGraph(CDC * pDC);
	void ClearGraph();

	void SetGraphSize(CSize g_size);
	void SetValue(__time64_t t,double startvalue, double maxvalue, double minvalue, double endvalue);
private:
	double GetMAValue(_2DKLineGraphValues* cur_val,int period);
	int ValueToPoint(double val);
	int TimeToPoint(__time64_t t);
};

⌨️ 快捷键说明

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