在MFC工程中新建一个对话框

来源:互联网 发布:小米无人机 知乎 编辑:程序博客网 时间:2024/05/22 15:55

1.MFC简介

Microsoft Foundation Class微软基础类库,这个类集以层次结构组织起来,其中封装了发部分的Windows API函数和Windows控件,它所包含的功能设计整个Windows操作系统。使用MFC类库和VC++提供的高度可视的应用开发工具,可使应用程序开发更加简单,开发周期大大缩短,提高代码的可靠性和可重用性。

2.任务

新建一个MFC工程后,选在经典MFC界面,下一步下一步...然后编译即可得到一个最基本的MFC工程。该工程存在一个菜单栏,用户区和一个工具栏。在菜单栏中有一个叫做“关于”的菜单项,点击即可弹出一个模式对话框。为了加深对MFC框架的理解,我想在这个工程中添加一个自己的对话框,从而了解到底是哪些部分在操纵着对话框资源的建立和使用。

3.过程

1.为各个需要用到的资源分配ID




2.在主程序窗口类中添加响应函数声明并在.cpp文件中实现

void CCaculatorApp::OnMydlg(){CMYDLG MyDlg;MyDlg.DoModal();}
3.在.cpp文件的消息映射中添加与自己的对话框有关的消息映射

BEGIN_MESSAGE_MAP(CCaculatorApp, CWinApp)ON_COMMAND(ID_APP_ABOUT, &CCaculatorApp::OnAppAbout)ON_COMMAND(ID_32772,&CCaculatorApp::OnMydlg)// 基于文件的标准文档命令ON_COMMAND(ID_FILE_NEW, &CWinApp::OnFileNew)ON_COMMAND(ID_FILE_OPEN, &CWinApp::OnFileOpen)// 标准打印设置命令ON_COMMAND(ID_FILE_PRINT_SETUP, &CWinApp::OnFilePrintSetup)END_MESSAGE_MAP()
3.新建一个对话框类继承CDialogEx,与资源文件中自己的对话框绑定

class CMYDLG : public CDialogEx{public:CMYDLG();// 对话框数据enum { IDD = IDD_MYDLG };protected:virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 支持//// 实现(若对话框内无空间则不添加下面那条消息映射声明,否则编译出错)//protected://DECLARE_MESSAGE_MAP()};

4.效果

点击“计算单元”中的“我的对话框”,弹出成功。





阅读全文
0 0
原创粉丝点击