在MFC工程中新建一个对话框
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.效果
在MFC工程中新建一个对话框相关推荐
- 非MFC工程中使用MFC库
需求说明 C++工程的类型有很多,从VS(或VC)可以看到常见的有:Win32 Console Application.MFC Application.Win32 Project等.在创建MFC工程时 ...
- mfc工程中添加com接口支持
在普通的mfc工程中常常需要添加com接口支持.最典型的应用就是使用 com中的连接点机制时,需要在客户端实现事件接受器.简单说来,就是要实现在com服务器端声明的事件接口.这个接口由server端暴 ...
- eclipse新建一个java_Eclipse中新建一个java源文件的步骤
[简答题]请根据第六次讨论题目进行讨论.并将你的讨论回答的ppt传到此处. [简答题]P152页,习题9 一.二(2,3).请将回答的word文档上传到此处. [简答题]第五次讨论:讨论题目参见课程网 ...
- springboot controller 中新建一个控制器类 提示该类从未被使用
java web项目 springboot框架 webapi前后端分离 看了一篇文章 从文章中提到的github上拉取的代码 在springboot中新建一个控制器类,却提示该类从未被使用? 是因为创 ...
- 10-1Python学习笔记 10-2C语言学习笔记 : 在文本编辑器中新建一个文件, 写几句话来总结一下你至此学到的Python知识
10-1 Python学习笔记 : 在文本编辑器中新建一个文件, 写几句话来总结一下你至此学到的Python知识, 其中每一行都以"In Python you can"打头. 将这 ...
- 使用cmd命令在桌面上新建一个文件夹,且在文件夹中新建一个.java文件,使用cmd命令实现.java文件的编译运行
标题使用cmd命令在桌面上新建一个文件夹,且在文件夹中新建一个.java文件,使用cmd命令实现.java文件的编译运行 1.在电脑桌面使用快捷键win+r打开 2.打开cmd命令界面之后使用md d ...
- keil5中新建一个STM32工程
前言 相信很多stm32的初学者对于创建一个新的工程还是感觉比较困难的,即使学习了一段时间的stm32,创建一个新工程还是会感到无所适从.相信大家在学习stm32之初都是把整个例程工程文件copy下来 ...
- C++ Excel表格解析(一、MFC工程中的应用)
一.前言 C++怎么解析Excel呢,这两天研究了一下,这一篇就来谈一谈MFC中如何解析Excel. 二.准备 2.1 代码结构 2.2 类说明 2.2.1 类型库 图中圈出来的这些类,都是一些自带的 ...
- 使用Spring boot开发一个接口 - TODO应用中新建一个TASK
spring initializr spring boot官方提供了很方便的初始化项目的方法,即spring initializr.可以直接在IDEA中创建,或在https://start.sprin ...
最新文章
- linux磁盘冗余阵列
- linux 如何打包分区文件,Linux基础------文件打包解包---tar命令,文件压缩解压---命令gzip,vim编辑器创建和编辑正文件,磁盘分区/格式化,软/硬链接...
- 5种iterator
- 关于std::string和 C-style string的一些知识点备忘
- MySql基础笔记(三)其他重要的事情
- MYSQL初学者命令行使用指南
- An internal error occurred during: Launching MVC on Tomcat 7.x.
- Centos下更新php
- bootice工具修复linux,bootice工具怎么修复引导win7
- raw数据拆分成rggb四通道,拆分与合成
- Carmack平方根函数经典案例
- R语言 表达式对象的求值 eval
- 数据库应用——Atlas代理MySQL集群实现读写分离
- 网站收录信息查询工具|世界排名
- Java日志框架简介
- Excel 表格中固定表头
- 京东 java开发 待遇_【京东金融工资】java开发工程师待遇-看准网
- 大学生自学Python获得人生第一桶金,月入过万的教程送给你
- hbase在海量用户日志中快速查询访问路径的使用场景
- 【vue学习笔记】vue-cli-service的使用