📄 bginfos.cpp
字号:
// BgInfos.cpp : 实现文件
//
#include "stdafx.h"
#include "GDraw.h"
#include "BgInfos.h"
#include"GDrawDoc.h"
#include"GDrawView.h"
#include"MainFrm.h"
// BgInfos
IMPLEMENT_DYNCREATE(BgInfos, CFormView)
BgInfos::BgInfos()
: CFormView(BgInfos::IDD)
, m_width(1024)
, m_height(768)
,color(RGB(255,255,255))
, m_x(0)
, m_y(0)
{
}
BgInfos::~BgInfos()
{
}
void BgInfos::DoDataExchange(CDataExchange* pDX)
{
CFormView::DoDataExchange(pDX);
DDX_Text(pDX, IDC_WIDTH, m_width);
DDV_MinMaxInt(pDX, m_width, 10, 2000);
DDX_Text(pDX, IDC_HEIGHT, m_height);
DDV_MinMaxInt(pDX, m_height, 10, 2000);
DDX_Text(pDX, IDC_EDIT3, m_x);
DDX_Text(pDX, IDC_EDIT4, m_y);
}
BEGIN_MESSAGE_MAP(BgInfos, CFormView)
ON_BN_CLICKED(IDC_BG, &BgInfos::OnBnClickedBgInfos)
ON_WM_PAINT()
ON_BN_CLICKED(IDC_CHANGE, &BgInfos::OnBnClickedChange)
END_MESSAGE_MAP()
// BgInfos 诊断
#ifdef _DEBUG
void BgInfos::AssertValid() const
{
CFormView::AssertValid();
}
#ifndef _WIN32_WCE
void BgInfos::Dump(CDumpContext& dc) const
{
CFormView::Dump(dc);
}
#endif
#endif //_DEBUG
// BgInfos 消息处理程序
void BgInfos::OnBnClickedBgInfos()
{
CColorDialog ccd;
COLORREF col;
CMainFrame* MainFrame = (CMainFrame*)AfxGetMainWnd();
CGDrawView *draw=(CGDrawView*)MainFrame->m_wndSplitter.GetPane(0,0);
if(ccd.DoModal()==IDOK)
{
col=ccd.GetColor ();
// color.SetFromCOLORREF (col);
color=col;
draw->bg_color=color;
draw->isset=TRUE;
}
CWnd *pWnd=GetDlgItem (IDC_BG);
CDC *pDC=pWnd->GetDC ();
if( draw->isset)
col=draw->bg_color;
else
col=color;
pDC->FillRect (CRect(1,1,89,46),&CBrush(col));
ReleaseDC(pDC);
if(draw->isset)
{
CDC*pdc=draw->GetDC();
CBrush backBrush(col);
CBrush* pOldBrush = pdc->SelectObject(&backBrush);
CRect rect;
pdc->GetClipBox(&rect);
pdc->PatBlt(rect.left, rect.top, rect.Width(), rect.Height(), PATCOPY);
pdc->SelectObject(pOldBrush);
draw->ShowGraph(pdc);
ReleaseDC(pdc);
}
return ;
}
void BgInfos::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: 在此处添加消息处理程序代码
// 不为绘图消息调用 CDialog::OnPaint()
CWnd *pWnd=GetDlgItem (IDC_BG);
CDC *pDC=pWnd->GetDC ();
CMainFrame* MainFrame = (CMainFrame*)AfxGetMainWnd();
CGDrawView *draw=(CGDrawView*)MainFrame->m_wndSplitter.GetPane(0,0);
COLORREF col;
if( draw->isset)
col=draw->bg_color;
else
col=color;
pDC->FillRect (CRect(1,1,89,46),&CBrush(col));
ReleaseDC(pDC);
}
void BgInfos::OnBnClickedChange()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(true);
CMainFrame* MainFrm=(CMainFrame*)AfxGetMainWnd();
CGDrawView* draw=(CGDrawView*)MainFrm->m_wndSplitter.GetPane(0,0);
// CDC*pdc=draw->GetDC();
// CRect rect(0,0,m_width,m_height);
// pdc->FillRect(rect,&CBrush(RGB(30,50,60)));
// ReleaseDC(pdc);
CSize sizeTotal;
sizeTotal.cx=m_width;
sizeTotal.cy=m_height;
draw->width=m_width;
draw->height=m_height;
draw->SetScrollSizes(MM_TEXT,sizeTotal);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -