demodlg.cpp

来自「《MFC经典问答》pdf格式 拿出来大家共享一下」· C++ 代码 · 共 82 行

CPP
82
字号
// DemoDlg.cpp : implementation file
//

#include "stdafx.h"
#include "UpdateUIDialog.h"
#include "DemoDlg.h"

#include <afxpriv.h>  // For WM_KICKIDLE message

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

/////////////////////////////////////////////////////////////////////////////
// CDemoDlg dialog


CDemoDlg::CDemoDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CDemoDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDemoDlg)
	m_nX = 0;
	m_nY = 0;
	m_nShape = -1;
	//}}AFX_DATA_INIT
}


void CDemoDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDemoDlg)
	DDX_Control(pDX, IDC_EDIT, m_edtEdit);
	DDX_Control(pDX, IDC_CHECK, m_chkCheck);
	DDX_Control(pDX, IDC_SHAPE, m_cmbShape);
	DDX_Control(pDX, IDC_Y, m_edtY);
	DDX_Control(pDX, IDC_X, m_edtX);
	DDX_Text(pDX, IDC_X, m_nX);
	DDX_Text(pDX, IDC_Y, m_nY);
	DDX_CBIndex(pDX, IDC_SHAPE, m_nShape);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDemoDlg, CDialog)
	//{{AFX_MSG_MAP(CDemoDlg)
	ON_MESSAGE_VOID(WM_KICKIDLE, OnKickIdle)
	ON_UPDATE_COMMAND_UI(IDC_CHECKED, OnUpdateChecked)
	ON_UPDATE_COMMAND_UI(IDC_EMPTY, OnUpdateEmpty)
	ON_UPDATE_COMMAND_UI(IDOK, OnUpdateOK)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDemoDlg message handlers

/////////////////////////////////////////////////////////////////////////////
// ON_UPDATE_COMMAND_UI handlers

void CDemoDlg::OnKickIdle()
{
	UpdateDialogControls( this, FALSE );
}

void CDemoDlg::OnUpdateChecked( CCmdUI* pCmdUI )
{
	pCmdUI->Enable( m_chkCheck.GetCheck() == 1 );
}

void CDemoDlg::OnUpdateEmpty( CCmdUI* pCmdUI )
{
	pCmdUI->Enable( m_edtEdit.GetWindowTextLength() > 0 );
}

void CDemoDlg::OnUpdateOK( CCmdUI* pCmdUI )
{
	pCmdUI->Enable(	m_edtX.GetWindowTextLength() > 0
					&& m_edtY.GetWindowTextLength() > 0 );
}

⌨️ 快捷键说明

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