您的位置:首页 > 编程语言 > C语言/C++

通过c++类创建对话框

2014-12-25 15:47 351 查看
本文由 书画小说软件 整理发布 内容与本软件无关
更惬意的读、更舒心的写、更轻松的发布

对话框直接添加类,类向导添加时出现了问题。
因此便想通过添加C++类的方式间接实现添加对话框类。

第一步:添加C++类

#pragma once
class CWordCountDlg
{
public:
CWordCountDlg(void);
~CWordCountDlg(void);
};

#include "StdAfx.h"
#include "WordCountDlg.h"
CWordCountDlg::CWordCountDlg(void)
{
}
CWordCountDlg::~CWordCountDlg(void)
{
}

第二步: 扩展成MFC对话框类

#include "resource.h"                    //0
#pragma once
class CWordCountDlg:public CDialog       //1 基类
{
DECLARE_DYNAMIC(CWordCountDlg)        //2
public:
// 对话框数据
enum { IDD = IDD_WORD_COUNT };    //3对话框关联ID
public:
CWordCountDlg(void);
~CWordCountDlg(void);
protected:
virtual void DoDataExchange(CDataExchange* pDX);    //4 数据关联
DECLARE_MESSAGE_MAP()                               //5 消息映射
public:
virtual BOOL OnInitDialog();                        //6 初始化

};


#include "StdAfx.h"
#include "WordCountDlg.h"
IMPLEMENT_DYNAMIC(CWordCountDlg, CDialog)    // 0
CWordCountDlg::CWordCountDlg(void): CDialog(CWordCountDlg::IDD, NULL)  //1
{
}
CWordCountDlg::~CWordCountDlg(void)
{
}
void CWordCountDlg::DoDataExchange(CDataExchange* pDX)  //2
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CWordCountDlg, CDialog)               //3
ON_BN_CLICKED(IDOK, &CWordCountDlg::OnBnClickedOk)
END_MESSAGE_MAP()
BOOL CWordCountDlg::OnInitDialog()                     //4
{
CDialog::OnInitDialog();
return TRUE;  // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: