📄 circlepro.cpp
字号:
// CirclePro.cpp : 实现文件
//
#include "stdafx.h"
#include "GDraw.h"
#include"Graph_Union.h"
#include "CirclePro.h"
#include"MainFrm.h"
// CCirclePro
IMPLEMENT_DYNCREATE(CCirclePro, CFormView)
CCirclePro::CCirclePro()
: CFormView(CCirclePro::IDD)
, m_x(0)
, m_y(0)
, m_r(0)
, m_size(0)
{
}
CCirclePro::~CCirclePro()
{
}
void CCirclePro::DoDataExchange(CDataExchange* pDX)
{
CFormView::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDIT1, m_x);
DDV_MinMaxInt(pDX, m_x, 0, 1025);
DDX_Text(pDX, IDC_EDIT2, m_y);
DDV_MinMaxInt(pDX, m_y, 0, 768);
DDX_Text(pDX, IDC_EDIT5, m_r);
DDV_MinMaxInt(pDX, m_r, 1, 1024);
DDX_Text(pDX, IDC_EDIT6, m_size);
DDV_MinMaxInt(pDX, m_size, 1, 1024);
}
BEGIN_MESSAGE_MAP(CCirclePro, CFormView)
ON_WM_PAINT()
ON_BN_CLICKED(IDC_CIRCLECOLOR,&CCirclePro::ONBNS)
ON_BN_CLICKED(IDC_BUTTON1, &CCirclePro::OnBnClickedButton1)
ON_BN_CLICKED(IDC_BUTTON2, &CCirclePro::OnBnClickedButton2)
END_MESSAGE_MAP()
// CCirclePro 诊断
#ifdef _DEBUG
void CCirclePro::AssertValid() const
{
CFormView::AssertValid();
}
#ifndef _WIN32_WCE
void CCirclePro::Dump(CDumpContext& dc) const
{
CFormView::Dump(dc);
}
#endif
#endif //_DEBUG
// CCirclePro 消息处理程序
void CCirclePro::OnPaint()
{
CPaintDC dc(this);
CWnd *pWnd=GetDlgItem (IDC_CIRCLECOLOR);
CDC *pDC=pWnd->GetDC ();
CMainFrame* MainFrame = (CMainFrame*)AfxGetMainWnd();
CGDrawView *draw=(CGDrawView*)MainFrame->m_wndSplitter.GetPane(0,0);
color=draw->m_ptrGL->color;
if( draw->select )
{
pDC->FillRect (CRect(2,2,96,51),&CBrush(draw->m_ptrGL->color));
SetDlgItemInt(IDC_EDIT1,draw->m_ptrGL->pp[0].x);
SetDlgItemInt(IDC_EDIT2,draw->m_ptrGL->pp[0].y);
SetDlgItemInt(IDC_EDIT5,draw->m_ptrGL->shape);
SetDlgItemInt(IDC_EDIT6,draw->m_ptrGL->wide);
}
else
pDC->FillRect (CRect(2,2,96,51),&CBrush(color));
ReleaseDC(pDC);
}
void CCirclePro::ONBNS()
{
CColorDialog ccd;
COLORREF col;
if(ccd.DoModal()==IDOK)
{
col=ccd.GetColor ();
// color.SetFromCOLORREF (col);
color=col;
}
CWnd *pWnd=GetDlgItem (IDC_CIRCLECOLOR);
CDC *pDC=pWnd->GetDC ();
pDC->FillRect (CRect(2,2,96,51),&CBrush(color));
pWnd->Invalidate ();
ReleaseDC(pDC);
CMainFrame* MainFrame = (CMainFrame*)AfxGetMainWnd();
CGDrawView *draw=(CGDrawView*)MainFrame->m_wndSplitter.GetPane(0,0);
if( draw->select )
{
draw->m_ptrGL->color=color;
// draw->drawcircle(draw->GetDC(),draw->m_ptrGL->pp[0].x,draw->m_ptrGL->pp[0].y,draw->m_ptrGL->shape,draw->m_ptrGL->color,draw->m_ptrGL->wide);
draw->Invalidate();
}
draw->dline=0;
draw->breakline=0;
}
void CCirclePro::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(true);
CMainFrame* MainFrame = (CMainFrame*)AfxGetMainWnd();
CGDrawView *draw=(CGDrawView*)MainFrame->m_wndSplitter.GetPane(0,0);
if( draw->select )
{
draw->m_ptrGL->color=color;
draw->m_ptrGL->pp[0].x=m_x;
draw->m_ptrGL->pp[0].y=m_y;
draw->m_ptrGL->shape=m_r;
draw->m_ptrGL->wide=m_size;
// draw->drawcircle(draw->GetDC(),draw->m_ptrGL->pp[0].x,draw->m_ptrGL->pp[0].y,draw->m_ptrGL->shape,draw->m_ptrGL->color,draw->m_ptrGL->wide);
draw->Invalidate();
}
draw->dline=0;
draw->breakline=0;
}
void CCirclePro::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(true);
CMainFrame* MainFrame = (CMainFrame*)AfxGetMainWnd();
CGDrawView *draw=(CGDrawView*)MainFrame->m_wndSplitter.GetPane(0,0);
// Graph_Union ps(draw->m_ptrGL->type,draw->m_ptrGL->count,draw->m_ptrGL->wide,draw->m_ptrGL->shape,draw->m_ptrGL->pp,draw->m_ptrGL->color,draw->m_ptrGL->fill_color);
draw->m_ptrGL->type=-1;
//draw->m_ptrGL->pp
draw->m_ptrGL=NULL;
draw->init();
draw->OnSelectGraph();
draw->Invalidate();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -