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

📄 drawgrindlgdlg.cpp

📁 WINCE下的画图工具
💻 CPP
字号:
// DrawGrInDlgDlg.cpp : implementation file
//

#include "stdafx.h"
#include "DrawGrInDlg.h"
#include "DrawGrInDlgDlg.h"

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

/////////////////////////////////////////////////////////////////////////////
// CDrawGrInDlgDlg dialog

CDrawGrInDlgDlg::CDrawGrInDlgDlg(CWnd* pParent /*=NULL*/)
	: CScrollDialog(CDrawGrInDlgDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDrawGrInDlgDlg)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
	line = NULL;
}

void CDrawGrInDlgDlg::DoDataExchange(CDataExchange* pDX)
{
	CScrollDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDrawGrInDlgDlg)
	DDX_Control(pDX, IDC_STATIC1, m_ctrl1);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CDrawGrInDlgDlg, CScrollDialog)
	//{{AFX_MSG_MAP(CDrawGrInDlgDlg)
	ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
	ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
	ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDrawGrInDlgDlg message handlers

BOOL CDrawGrInDlgDlg::OnInitDialog()
{
	CScrollDialog::OnInitDialog();

	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, FALSE);		// Set small icon
	
	CenterWindow(GetDesktopWindow());	// center to the hpc screen

	m_ctrl1.CreateObject(GR_PIE);

	m_ctrl1.SetLegend(_T("一月"),35,RGB(255,0,0));
	m_ctrl1.SetLegend(_T("二月"),55,RGB(255,255,0));
	m_ctrl1.SetLegend(_T("三月"),100,RGB(0,255,0));
	m_ctrl1.SetLegend(_T("四月"),60,RGB(0,255,255));
	m_ctrl1.SetLegend(_T("五月"),60,RGB(0,0,255));

	return TRUE;  // return TRUE  unless you set the focus to a control
}



void CDrawGrInDlgDlg::OnButton1() 
{
	
	if( !m_ctrl1.IsFree() )
		m_ctrl1.ReleaseObject();

	m_ctrl1.CreateObject(GR_PIE);

	m_ctrl1.SetLegend(_T("1月"),35,RGB(255,0,0));
	m_ctrl1.SetLegend(_T("2月"),55,RGB(255,255,0));
	m_ctrl1.SetLegend(_T("3月"),100,RGB(0,255,0));
	m_ctrl1.SetLegend(_T("4月"),60,RGB(0,255,255));
	m_ctrl1.SetLegend(_T("5月"),60,RGB(0,0,255));
	
	m_ctrl1.SetPieWithText();
//	m_ctrl1.SetCutPie();

	m_ctrl1.Invalidate();
}

void CDrawGrInDlgDlg::OnButton2() 
{
	if( !m_ctrl1.IsFree() )
		m_ctrl1.ReleaseObject();

	m_ctrl1.CreateObject(GR_BAR);
	
	m_ctrl1.SetYMin(25);
	m_ctrl1.SetYMax(100);
	m_ctrl1.SetYName(_T("纵坐标"));
	m_ctrl1.SetXName(_T("横坐标"));
	m_ctrl1.SetTitle(_T("五个柱状图"));
	m_ctrl1.SetLegend(_T("一月"),35,RGB(255,0,0));
	m_ctrl1.SetLegend(_T("二月"),55,RGB(255,255,0));
	m_ctrl1.SetLegend(_T("三月"),100,RGB(0,255,0));
	m_ctrl1.SetLegend(_T("四月"),60,RGB(0,255,255));
	m_ctrl1.SetLegend(_T("五月"),60,RGB(0,0,255));
	m_ctrl1.Set3DBar(TRUE);
	m_ctrl1.SetWithDash(TRUE);

	m_ctrl1.Invalidate();
}

void CDrawGrInDlgDlg::OnButton3() 
{
	if( !m_ctrl1.IsFree() )
		m_ctrl1.ReleaseObject();

	m_ctrl1.CreateObject(GR_LINE);

	m_ctrl1.SetTitle(_T("曲线图"));
	m_ctrl1.SetYName(_T("纵坐标"));
	m_ctrl1.SetXName(_T("横坐标"));
	m_ctrl1.SetYMin(0);
	m_ctrl1.SetYMax(100);
	m_ctrl1.SetXMin(0);
	m_ctrl1.SetXMax(100);
	m_ctrl1.SetWithDash(TRUE);
	int iIndex = m_ctrl1.AddLine();
	m_ctrl1.SetLegend(iIndex,_T("一月"));
	m_ctrl1.SetPointType(iIndex,CBaseGr::CIRCLE);
	m_ctrl1.SetLineColor(iIndex,RGB(255,0,0));
	m_ctrl1.SetPointColor(iIndex,RGB(255,0,0));
	m_ctrl1.AddLineData(iIndex,10,10);
	m_ctrl1.AddLineData(iIndex,20,20);
	m_ctrl1.AddLineData(iIndex,30,40);
	m_ctrl1.AddLineData(iIndex,40,40);
	m_ctrl1.AddLineData(iIndex,50,60);
	m_ctrl1.AddLineData(iIndex,60,60);

	iIndex = m_ctrl1.AddLine();
	m_ctrl1.SetLegend(iIndex,_T("二月"));
	m_ctrl1.SetPointType(iIndex,CBaseGr::FDIAMOND);
	m_ctrl1.SetLineColor(iIndex,RGB(0,255,0));
	m_ctrl1.SetPointColor(iIndex,RGB(0,255,0));
	m_ctrl1.AddLineData(iIndex,10,30);
	m_ctrl1.AddLineData(iIndex,25,20);
	m_ctrl1.AddLineData(iIndex,35,40);
	m_ctrl1.AddLineData(iIndex,40,50);
	m_ctrl1.AddLineData(iIndex,50,65);
	m_ctrl1.AddLineData(iIndex,60,70);

	m_ctrl1.SetDotSize(3);

	m_ctrl1.Invalidate();
}

⌨️ 快捷键说明

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