dlgedit.cpp

来自「《Visual C++ 6.0实例教程》配套代码」· C++ 代码 · 共 79 行

CPP
79
字号
// DlgEdit.cpp : implementation file
//

#include "stdafx.h"
#include "MenuTest.h"
#include "DlgEdit.h"
#include "MainFrm.h"

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

/////////////////////////////////////////////////////////////////////////////
// CDlgEdit dialog


CDlgEdit::CDlgEdit(int type, CWnd* pParent /*=NULL*/)
	: CDialog(CDlgEdit::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDlgEdit)
	m_nX1 = 0;
	m_nX2 = 0;
	m_nY1 = 0;
	m_nY2 = 0;
	//}}AFX_DATA_INIT
	m_nType = type;
}


void CDlgEdit::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDlgEdit)
	DDX_Text(pDX, IDC_EDIT_X1, m_nX1);
	DDV_MinMaxInt(pDX, m_nX1, 0, 600);
	DDX_Text(pDX, IDC_EDIT_X2, m_nX2);
	DDV_MinMaxInt(pDX, m_nX2, 0, 600);
	DDX_Text(pDX, IDC_EDIT_Y1, m_nY1);
	DDV_MinMaxInt(pDX, m_nY1, 0, 600);
	DDX_Text(pDX, IDC_EDIT_Y2, m_nY2);
	DDV_MinMaxInt(pDX, m_nY2, 0, 600);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDlgEdit, CDialog)
	//{{AFX_MSG_MAP(CDlgEdit)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDlgEdit message handlers


void CDlgEdit::OnOK() 
{
	// TODO: Add extra validation here
    UpdateData(TRUE);
	CMainFrame *pMainFrame = (CMainFrame *) AfxGetApp()->GetMainWnd();
	if(m_nType == 1)
	{
		pMainFrame->m_nRectLeft   = m_nX1;
		pMainFrame->m_nRectTop    = m_nY1;
		pMainFrame->m_nRectRight  = m_nX2;
		pMainFrame->m_nRectBottom = m_nY2;
	}
	else if(m_nType == 2)
	{
		pMainFrame->m_nCircleLeft   = m_nX1;
		pMainFrame->m_nCircleTop    = m_nY1;
		pMainFrame->m_nCircleRight  = m_nX2;
		pMainFrame->m_nCircleBottom = m_nY2;
	}

	CDialog::OnOK();
}

⌨️ 快捷键说明

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