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

📄 neardata.cpp

📁 一个彩民的神器
💻 CPP
字号:
// neardata.cpp : implementation file
//

#include "stdafx.h"
#include "体彩.h"
#include "neardata.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// Cneardata dialog


Cneardata::Cneardata(CWnd* pParent /*=NULL*/)
	: CDialog(Cneardata::IDD, pParent)
{
	//{{AFX_DATA_INIT(Cneardata)
	m_intold = 0;
	//}}AFX_DATA_INIT
}


void Cneardata::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(Cneardata)
	DDX_Control(pDX, IDC_bitmap, m_bitmap);
	DDX_Control(pDX, IDC_1, m_1);
	DDX_Control(pDX, IDC_2, m_2);
	DDX_Control(pDX, IDC_3, m_3);
	DDX_Control(pDX, IDC_4, m_4);
	DDX_Control(pDX, IDC_5, m_5);
	DDX_Control(pDX, IDC_6, m_6);
	DDX_Control(pDX, IDC_7, m_7);
	DDX_Control(pDX, IDC_COMBO1, m_olddata);
	DDX_CBIndex(pDX, IDC_COMBO1, m_intold);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(Cneardata, CDialog)
	//{{AFX_MSG_MAP(Cneardata)
	ON_WM_PAINT()
	ON_BN_CLICKED(IDC_draw, Ondraw)
	ON_BN_CLICKED(IDC_drawwei, Ondrawwei)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// Cneardata message handlers

BOOL Cneardata::OnInitDialog() 
{
	CDialog::OnInitDialog();
	readdata();
CString string;
m_olddata.DeleteString(0);
drawdata();
m_1.ShowWindow(false);
m_2.ShowWindow(false);
m_3.ShowWindow(false);
m_4.ShowWindow(false);
m_5.ShowWindow(false);
m_6.ShowWindow(false);
m_7.ShowWindow(false);
m_bitmap.ShowWindow(true);
//int i=0;

pos=caipiaolist.GetHeadPosition();
while(pos!=caipiaolist.GetTailPosition())
{
Cmoney *money=(caipiaolist.GetAt(pos));
string.Format(" %d %d %d %d %d %d %d_%d",money->m_date,money->m_1,money->m_2,money->m_3,money->m_4,money->m_5,money->m_6,money->m_7);
m_olddata.AddString(string);
caipiaolist.GetNext(pos);
}
	// TODO: Add extra initialization here
m_intold=0;
UpdateData(false);

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void Cneardata::OnPaint() 
{
	CPaintDC dc(this); // device context for painting
/*	
	CRect rect;
	GetClientRect(&rect);
	CBrush brush(RGB(255,255,255));
CBrush *old=dc.SelectObject(&brush);
dc.FillRect(&rect,&brush);
dc.SelectObject(old);	*/
	// Do not call CDialog::OnPaint() for painting messages
}

void Cneardata::readdata()
{
ifstream in("data.txt");
long date=0;
CString string;
int data1,data2,data3,data4,data5,data6,data7;

while(!in.eof())
{	
in>>date;
in>>data1>>data2>>data3>>data4>>data5>>data6>>data7;
Cmoney* money=new Cmoney;
money->m_1=data1;
money->m_2=data2;
money->m_3=data3;
money->m_4=data4;
money->m_5=data5;
money->m_6=data6;
money->m_7=data7;
money->m_date=date;
caipiaolist.AddTail(money);

//delete money;
}
}

void Cneardata::drawdata()
{
m_1.ShowWindow(false);
m_2.ShowWindow(false);
m_3.ShowWindow(false);
m_4.ShowWindow(false);
m_5.ShowWindow(false);
m_6.ShowWindow(false);
m_7.ShowWindow(false);
m_bitmap.ShowWindow(true);
	int beishu=10;
CString string="aaaa";
testGraph=new CGraph();
testGraph->SetGraphTitle("最近5期数据直方图统计");
testGraph->SetTickRange(90);
testGraph->SetTickSpace(10);	
	testGraph->SetXAxisAlignment(0);
	testGraph->SetXAxisLabel("每期数据");
	testGraph->SetYAxisLabel("数值");
	CGraphSeries* series1 = new CGraphSeries();
	CGraphSeries* series2 = new CGraphSeries();
	CGraphSeries* series3 = new CGraphSeries();
CGraphSeries* series4 = new CGraphSeries();
CGraphSeries* series5 = new CGraphSeries();
	series1->SetLabel("-4");
	series2->SetLabel("-3");
	series3->SetLabel("-2");
	series4->SetLabel("-1");
series5->SetLabel(" 0");
	pos=caipiaolist.GetHeadPosition();
Cmoney *money=(caipiaolist.GetAt(pos));

caipiaolist.GetNext(pos);

	series5->SetData(0,money->m_1*10);
series5->SetData(1,money->m_2*10);
series5->SetData(2,money->m_3*10);
series5->SetData(3,money->m_4*10);
	series5->SetData(4,money->m_5*10);
series5->SetData(5,money->m_6*10);
series5->SetData(6,money->m_7*10);
money=(caipiaolist.GetAt(pos));

caipiaolist.GetNext(pos);

	series4->SetData(0,money->m_1*10);
series4->SetData(1,money->m_2*10);
series4->SetData(2,money->m_3*10);
series4->SetData(3,money->m_4*10);
	series4->SetData(4,money->m_5*10);
series4->SetData(5,money->m_6*10);
series4->SetData(6,money->m_7*10);
	money=(caipiaolist.GetAt(pos));

caipiaolist.GetNext(pos);

	series3->SetData(0,money->m_1*10);
series3->SetData(1,money->m_2*10);
series3->SetData(2,money->m_3*10);
series3->SetData(3,money->m_4*10);
	series3->SetData(4,money->m_5*10);
series3->SetData(5,money->m_6*10);
series3->SetData(6,money->m_7*10);
money=(caipiaolist.GetAt(pos));

caipiaolist.GetNext(pos);

	series2->SetData(0,money->m_1*10);
series2->SetData(1,money->m_2*10);
series2->SetData(2,money->m_3*10);
series2->SetData(3,money->m_4*10);
	series2->SetData(4,money->m_5*10);
series2->SetData(5,money->m_6*10);
series2->SetData(6,money->m_7*10);
money=(caipiaolist.GetAt(pos));

caipiaolist.GetNext(pos);

	series1->SetData(0,money->m_1*10);
series1->SetData(1,money->m_2*10);
series1->SetData(2,money->m_3*10);
series1->SetData(3,money->m_4*10);
	series1->SetData(4,money->m_5*10);
series1->SetData(5,money->m_6*10);
series1->SetData(6,money->m_7*10);

	testGraph->AddSeries(series1);
	testGraph->AddSeries(series2);
	testGraph->AddSeries(series3);
	testGraph->AddSeries(series4);
	testGraph->AddSeries(series5);

	//set up legend
	testGraph->SetLegend(1, "2");
	testGraph->SetLegend(0, "1");
	testGraph->SetLegend(2, "3");
	testGraph->SetLegend(3, "4");
	testGraph->SetLegend(4, "5");
	testGraph->SetLegend(5, "6");
	testGraph->SetLegend(6, "7");
	
CWnd*pwnd=GetDlgItem(IDC_bitmap);
CDC*pDC=pwnd->GetDC();
	testGraph->DrawGraph(pDC);
	UpdateData(false);
}

void Cneardata::Ondraw() 
{
	// TODO: Add your control notification handler code here
	drawdata();	
}

void Cneardata::Ondrawwei() 
{
m_1.ShowWindow(true);
m_2.ShowWindow(true);
m_3.ShowWindow(true);
m_4.ShowWindow(true);
m_5.ShowWindow(true);
m_6.ShowWindow(true);
m_7.ShowWindow(true);
m_bitmap.ShowWindow(false);

	int beishu=7;
int counter=0;
CString string ;
CDC*pDC=new CDC;
for(int i=0;i<7;i++)
{
string.Format("第%d位 *7",i+1);
testGraph=new CGraph();
//testGraph->SetGraphTitle(string);
testGraph->SetTickRange(63);
testGraph->SetTickSpace(7);	
	testGraph->SetXAxisAlignment(0);
	testGraph->SetXAxisLabel(string);
	testGraph->SetYAxisLabel("数字");
	CGraphSeries* series1 = new CGraphSeries();
	CGraphSeries* series2 = new CGraphSeries();
	CGraphSeries* series3 = new CGraphSeries();
CGraphSeries* series4 = new CGraphSeries();
CGraphSeries* series5 = new CGraphSeries();
	series1->SetLabel("-4");
	series2->SetLabel("-3");
	series3->SetLabel("-2");
	series4->SetLabel("-1");
series5->SetLabel(" 0");
	pos=caipiaolist.GetHeadPosition();
	for(int j=0;j<5;j++)
	{
Cmoney *money=(caipiaolist.GetAt(pos));
switch(i)
{
case 0:
switch(j)
{
case 0:
	series5->SetData(0,money->m_1*beishu);
break;
case 1:
	series4->SetData(0,money->m_1*beishu);
break;
case 2:
	series3->SetData(0,money->m_1*beishu);
break;
case 3:
	series2->SetData(0,money->m_1*beishu);
break;
case 4:
	series1->SetData(0,money->m_1*beishu);
break;
default :break;
}
break;
case 1:
switch(j)
{
case 0:
	series5->SetData(0,money->m_2*beishu);
break;
case 1:
	series4->SetData(0,money->m_2*beishu);
break;
case 2:
	series3->SetData(0,money->m_2*beishu);
break;
case 3:
	series2->SetData(0,money->m_2*beishu);
break;
case 4:
	series1->SetData(0,money->m_2*beishu);
break;
default :break;
}
break;
case 2:
switch(j)
{
case 0:
	series5->SetData(0,money->m_3*beishu);
break;
case 1:
	series4->SetData(0,money->m_3*beishu);
break;
case 2:
	series3->SetData(0,money->m_3*beishu);
break;
case 3:
	series2->SetData(0,money->m_3*beishu);
break;
case 4:
	series1->SetData(0,money->m_3*beishu);
break;
default :break;
}
break;
case 3:
switch(j)
{
case 0:
	series5->SetData(0,money->m_4*beishu);
break;
case 1:
	series4->SetData(0,money->m_4*beishu);
break;
case 2:
	series3->SetData(0,money->m_4*beishu);
break;
case 3:
	series2->SetData(0,money->m_4*beishu);
break;
case 4:
	series1->SetData(0,money->m_4*beishu);
break;
default :break;
}
break;
case 4:
switch(j)
{
case 0:
	series5->SetData(0,money->m_5*beishu);
break;
case 1:
	series4->SetData(0,money->m_5*beishu);
break;
case 2:
	series3->SetData(0,money->m_5*beishu);
break;
case 3:
	series2->SetData(0,money->m_5*beishu);
break;
case 4:
	series1->SetData(0,money->m_5*beishu);
break;
default :break;
}
break;
case 5:
switch(j)
{
case 0:
	series5->SetData(0,money->m_6*beishu);
break;
case 1:
	series4->SetData(0,money->m_6*beishu);
break;
case 2:
	series3->SetData(0,money->m_6*beishu);
break;
case 3:
	series2->SetData(0,money->m_6*beishu);
break;
case 4:
	series1->SetData(0,money->m_6*beishu);
break;
default :break;
}
break;
case 6:
switch(j)
{
case 0:
	series5->SetData(0,money->m_7*beishu);
break;
case 1:
	series4->SetData(0,money->m_7*beishu);
break;
case 2:
	series3->SetData(0,money->m_7*beishu);
break;
case 3:
	series2->SetData(0,money->m_7*beishu);
break;
case 4:
	series1->SetData(0,money->m_7*beishu);
break;
default :break;
}
break;

default:break;
}
caipiaolist.GetNext(pos);

	}
	testGraph->AddSeries(series1);
	testGraph->AddSeries(series2);
	testGraph->AddSeries(series3);
	testGraph->AddSeries(series4);
	testGraph->AddSeries(series5);


	switch(i)
{
case 0:
pDC=m_1.GetDC();	
break;
case 1:
pDC=m_2.GetDC();
break;
case 2:
pDC=m_3.GetDC();
break;
case 3:
pDC=m_4.GetDC();
break;
case 4:
	pDC=m_5.GetDC();
break;
case 5:
	pDC=m_6.GetDC();
break;
case 6:
	pDC=m_7.GetDC();
break;
default :break;
}
//UpdateData(false);
testGraph->DrawGraph(pDC);
//delete pDC;
//delete testGraph;
UpdateData(false);	
}
	

}

⌨️ 快捷键说明

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