modelessdialog.cpp

来自「本文件中包含的是《VC编程100例》一书中的源代码」· C++ 代码 · 共 87 行

CPP
87
字号
// ModelessDialog.cpp : implementation file
//

#include "stdafx.h"
#include "ShowModelessDialog.h"
#include "ModelessDialog.h"

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

/////////////////////////////////////////////////////////////////////////////
// CModelessDialog dialog


CModelessDialog::CModelessDialog(CWnd* pParent /*=NULL*/)
	: CDialog(CModelessDialog::IDD, pParent)
{
	//{{AFX_DATA_INIT(CModelessDialog)
	m_strEdit1 = _T("");
	//}}AFX_DATA_INIT
	//TODO:add my code here
	m_pView = NULL;
}
//TODO:add my constrcutor here
CModelessDialog::CModelessDialog(CView *pView)
{
	m_pView = pView;
}

void CModelessDialog::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CModelessDialog)
	DDX_Text(pDX, IDC_EDIT1, m_strEdit1);
	//}}AFX_DATA_MAP
}


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

/////////////////////////////////////////////////////////////////////////////
// CModelessDialog message handlers


//重载虚函数OnOK
void CModelessDialog::OnCancel() 
{
	if(m_pView != NULL)
	{
		//非模式对话框不调用基类CDialog的OnCancel函数
		m_pView->PostMessage(WM_GOODBYE, IDCANCEL);
	}
	else
	{
		//模态对话框直接调用基类的OnConcel函数
		CDialog::OnCancel();
	}

}

//重载虚函数OnOK
void CModelessDialog::OnOK() 
{
	if(m_pView != NULL)
	{
		//非模式对话框不调用基类CDialog的OnOK函数
		UpdateData(TRUE);
		m_pView->PostMessage(WM_GOODBYE, IDOK);
	}
	else
	{
		//模态对话框直接调用基类的OnOK函数
		CDialog::OnOK();
	}
}

BOOL CModelessDialog::Create()
{
	return CDialog::Create(CModelessDialog::IDD);
}

⌨️ 快捷键说明

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