vc数据图形包括直方图及饼图等等.docx
- 文档编号:9506804
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:51
- 大小:24.86KB
vc数据图形包括直方图及饼图等等.docx
《vc数据图形包括直方图及饼图等等.docx》由会员分享,可在线阅读,更多相关《vc数据图形包括直方图及饼图等等.docx(51页珍藏版)》请在冰豆网上搜索。
vc数据图形包括直方图及饼图等等
protected:
//{{AFX_MSG(CMainFrame)
afx_msgintOnCreate(LPCREATESTRUCTlpCreateStruct);
afx_msgvoidOnMenuInPut();
afx_msgvoidOnMenuCreat();
afx_msgvoidOnMenuPrint();
afx_msgvoidOnMenuCurve();
afx_msgvoidOnMenuHistogram();
afx_msgvoidOnMenuCake();
afx_msgvoidOnCorlo();
afx_msgvoidOnMenuBig();
afx_msgvoidOnMenuSmall();
afx_msgvoidOnMenuClose();
afx_msgvoidOnMenuOpen();
afx_msgvoidOnMenuQuxian();
afx_msgvoidOnMENUpie();
afx_msgvoidOnMenuZhuzhuang();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//MainFrm.cpp:
implementationoftheCMainFrameclass
//
#include"stdafx.h"
#include"GraphDraw.h"
#include"MainFrm.h"
#include"iostream.h"
#include"fstream.h"
#include"string.h"
#include"dlg.h"
#include"GraphDrawView.h"
#include"GraphDrawdoc.h"
externCGraphDrawApptheApp;
#ifdef_DEBUG
#definenewDEBUG_NEW
#undefTHIS_FILE
staticcharTHIS_FILE[]=__FILE__;
#endif
#include"GraphDrawdoc.h"
externCGraphDrawApptheApp;
/////////////////////////////////////////////////////////////////////////////
//CMainFrame
IMPLEMENT_DYNCREATE(CMainFrame,CFrameWnd)
BEGIN_MESSAGE_MAP(CMainFrame,CFrameWnd)
//{{AFX_MSG_MAP(CMainFrame)
ON_WM_CREATE()
ON_COMMAND(ID_MENU_IN,OnMenuInPut)
ON_COMMAND(ID_MENU_CREAT,OnMenuCreat)
ON_COMMAND(ID_MENU_PRINT,OnMenuPrint)
ON_COMMAND(ID_MENU_CURVE,OnMenuCurve)
ON_COMMAND(ID_MENU_HISTOGRAM,OnMenuHistogram)
ON_COMMAND(ID_MENU_CAKE,OnMenuCake)
ON_COMMAND(ID_CORLO,OnCorlo)
ON_COMMAND(ID_MENU_BIG,OnMenuBig)
ON_COMMAND(ID_MENU_SMALL,OnMenuSmall)
ON_COMMAND(ID_MENU_CLOSE,OnMenuClose)
ON_COMMAND(ID_MENU_OPEN,OnMenuOpen)
ON_COMMAND(ID_MENU_QUXIAN,OnMenuQuxian)
ON_COMMAND(ID_MENU_pie,OnMENUpie)
ON_COMMAND(ID_MENU_ZHUZHUANG,OnMenuZhuzhuang)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
staticUINTindicators[]=
{
ID_SEPARATOR,//statuslineindicator
ID_INDICATOR_CAPS,
ID_INDICATOR_NUM,
ID_INDICATOR_SCRL,
};
/////////////////////////////////////////////////////////////////////////////
//CMainFrameconstruction/destruction
CMainFrame:
:
CMainFrame()
{
//TODO:
addmemberinitializationcodehere
}
CMainFrame:
:
~CMainFrame()
{
}
intCMainFrame:
:
OnCreate(LPCREATESTRUCTlpCreateStruct)
{
if(CFrameWnd:
:
OnCreate(lpCreateStruct)==-1)
return-1;
if(!
m_wndToolBar.CreateEx(this,TBSTYLE_FLAT,WS_CHILD|WS_VISIBLE|CBRS_TOP
|CBRS_GRIPPER|CBRS_TOOLTIPS|CBRS_FLYBY|CBRS_SIZE_DYNAMIC)||
!
m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failedtocreatetoolbar\n");
return-1;//failtocreate
}
if(!
m_wndStatusBar.Create(this)||
!
m_wndStatusBar.SetIndicators(indicators,
sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failedtocreatestatusbar\n");
return-1;//failtocreate
}
//TODO:
Deletethesethreelinesifyoudon'twantthetoolbarto
//bedockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);
return0;
}
BOOLCMainFrame:
:
PreCreateWindow(CREATESTRUCT&cs)
{
if(!
CFrameWnd:
:
PreCreateWindow(cs))
returnFALSE;
//TODO:
ModifytheWindowclassorstylesherebymodifying
//theCREATESTRUCTcs
returnTRUE;
}
/////////////////////////////////////////////////////////////////////////////
//CMainFramediagnostics
#ifdef_DEBUG
voidCMainFrame:
:
AssertValid()const
{
CFrameWnd:
:
AssertValid();
}
voidCMainFrame:
:
Dump(CDumpContext&dc)const
{
CFrameWnd:
:
Dump(dc);
}
#endif//_DEBUG
/////////////////////////////////////////////////////////////////////////////
//CMainFramemessagehandlers
voidCMainFrame:
:
OnMenuInPut()//从文本中读取数据
{
//TODO:
Addyourcommandhandlercodehere
CFileDialogdlg(TRUE,"SQL","*.txt",
OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"*.*",NULL);//弹出文件对话框
dlg.DoModal();
//记录文件途径
filename=dlg.GetPathName();
//更新对话框
this->UpdateData(FALSE);
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
ifstreamin(filename);//读取文件
CStrings;//定义字符串
CStringstr="";
inti=0;
for(intk=0;k<20;k++)
pDoc->score[k]=NULL;//初始化
in>>pDoc->x>>pDoc->y;
in>>pDoc->name>>pDoc->score[0];//读入数据
if(in.eof())
{
:
:
AfxMessageBox("无数据!
或者数据不符合要求!
");//判断是否有数据,是否是对称的数据
}
else//不只一个数继续
{
pDoc->c.xname=pDoc->x;//把名字传给坐标
pDoc->c.yname=pDoc->y;
str="数据读取成功!
\n";
while(!
in.eof())
{
//str+="(";
s.Format("%s",pDoc->name);//转换类型
str+=s;
str+="";
s.Format("%d",pDoc->score[i]);//转换类型
str+=s;
//str+=")";
str+="";
i++;
in>>pDoc->name>>pDoc->score[i];//继续读取
pDoc->num=i+1;
}
s.Format("%s",pDoc->name);
str+=s;
str+="";
s.Format("%d",pDoc->score[i]);
str+=s;
str+="";
s.Format("%d",pDoc->num);
pDoc->c.xmax=s;
pDoc->c.ymax="100";
:
:
AfxMessageBox(str);//在消息框输出
}
}
voidCMainFrame:
:
OnMenuCreat()//创建坐标系
{
//TODO:
Addyourcommandhandlercodehere
CDlgdlg;
dlg.DoModal();
}
voidCMainFrame:
:
OnMenuPrint()//影射画坐标系
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->flag=1;//标志赋值
pDoc->Draw();//调用画图
}
voidCMainFrame:
:
OnMenuCurve()//影射画曲线图
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->flag=5;//标志赋值
pView->Flag=0;
pView->SetTimer(1,100,NULL);
pView->Invalidate();
}
voidCMainFrame:
:
OnMenuHistogram()//影射画柱状图
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->flag=6;//标志赋值
pView->Flag=0;
pView->SetTimer(2,10,NULL);
pView->Invalidate();
}
voidCMainFrame:
:
OnMenuCake()//影射画饼状图
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->flag=7;
pView->Flag=0;
pDoc->graph.PaiXu();
pView->SetTimer(3,300,NULL);
pView->Invalidate();
//pDoc->Draw();//调用画图
}
voidCMainFrame:
:
OnCorlo()//颜色
{
//TODO:
Addyourcommandhandlercodehere
CColorDialogdlg;
dlg.DoModal();
//dlg.GetColor();
}
voidCMainFrame:
:
OnMenuBig()//放大
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->Flag=22;//可以进行放大图形
if(pView->flag==5)//重画原来的图形
pView->flag=2;
if(pView->flag==6)
pView->flag=3;
if(pView->flag==7)
pView->flag=4;
pView->Invalidate();
}
voidCMainFrame:
:
OnMenuSmall()//缩小
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->Flag=33;//可以进行缩小图形
if(pView->flag==5)//重画原来的图形
pView->flag=2;
if(pView->flag==6)
pView->flag=3;
if(pView->flag==7)
pView->flag=4;
pView->Invalidate();
}
voidCMainFrame:
:
OnMenuClose()//关闭移动
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->Flag=0;//把移动关闭
}
voidCMainFrame:
:
OnMenuOpen()//开启移动
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->Flag=11;//可以进行移动图形
if(pView->flag==5)//重画原来的图形
pView->flag=2;
if(pView->flag==6)
pView->flag=3;
if(pView->flag==7)
pView->flag=4;
pView->Invalidate();
}
voidCMainFrame:
:
OnMenuQuxian()
{
//TODO:
Addyourcommandhandlercodehere
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->flag=2;//静态画曲线
pView->Invalidate();
}
voidCMainFrame:
:
OnMENUpie()
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->flag=4;//静态画饼
pDoc->graph.PaiXu();
pView->Invalidate();
}
voidCMainFrame:
:
OnMenuZhuzhuang()
{
//TODO:
Addyourcommandhandlercodehere
CMainFrame*pFrame=(CMainFrame*)theApp.GetMainWnd();
CGraphDrawDoc*pDoc=(CGraphDrawDoc*)pFrame->GetActiveDocument();
CGraphDrawView*pView=(CGraphDrawView*)pFrame->GetActiveView();
pView->flag=3;//静态画柱状图
pView->Invalidate();
}
public:
//Overrides
//ClassWizardgeneratedvirtualfunctionoverrides
//{{AFX_VIRTUAL(CGraphDrawView)
public:
virtualvoidOnDraw(CDC*pDC);//overriddentodrawthisview
virtualBOOLPreCreateWindow(CREATESTRUCT&cs);
protected:
virtualBOOLOnPreparePrinting(CPrintInfo*pInfo);
virtualvoidOnBeginPrinting(CDC*pDC,CPrintInfo*pInfo);
virtualvoidOnEndPrinting(CDC*pDC,CPrintInfo*pInfo);
//}}AFX_VIRTUAL
//Implementation
public:
intFlag;
CPointm_point;
intFLAG;
intflag;//定义一个标志变量
virtual~CGraphDrawVi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vc 数据 图形 包括 直方图 等等