📄 neardata.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 + -