1.3 基于对话框的MFC应用程序实例
来源:互联网 发布:js代码攻击 编辑:程序博客网 时间:2024/05/17 09:39
MFC的全程是“Microsoft Foundation Classes”(微软基础类库),是微软为了简化Windows下应用程序的编写而提供的一个框架。MFC对基本API做了封装,并提供了数量众多的C++封装类。在编程时使用MFC,虽然会降低少许运行效率,但是会大大提高应用程序的开发效率。
1.3.1 技术要点:
- 对话框是Windows系统中的特殊窗口,对话框在系统内部已经实现了消息处理等功能,使得对话框的使用比普通窗口简单快捷。在Windows系统中,对话框的使用非常广泛;
- 在MFC中,对话框的封装类为CDialog,并且基于CDialog,又细分了众多的派生类,实现了对更多具体功能的封装;
1.3.2 实例步骤:
本实例演示基于MFC的对话框应用程序的方法,实例步骤如下:
- 打开Visual C++ 6.0,单击“File”/“New”菜单,此时将弹出项目向导对话框。在对话框中选择项目类型为“MFC AppWizard(exe)”,在项目名称文本框中输入“MfcDialog”,单击“OK”/“确认”按钮进入下一步;
- 在接下来的对话框中,选择“Dialog based”,其余选项采用默认值,单击“Finish”/“确认”按钮完成向导;
- 在完成应用程序向导后,IDE将自动打开对话框的设计界面。在设计界面中,可以通过鼠标拖动的方法改变对话框的大小,还可以将工具箱中的控件拖动到对话框上,已添加控件。在控件上单击鼠标右键,并单击“Properties”/“属性”菜单,可以设置控件的属性。读者可以尝试修改对话框上的静态文本按钮的内容;
1.3.3 程序运行:
1.3.4 源程序解读:
- 通过Visual C++ 6.0的Class View,可以看到向导已经为应用程序生成了3个类,其中CAboutDlg是“关于”对话框类。“关于”对话框可以在项目向导的后续步骤中选择是否需要:①、类CMfcDialogApp是整个应用程序的框架,用于控制应用程序的启动和结束;②、CMfcDialogDlg是主对话框类,用于控制主对话框的行为,以及接受主对话框上的鼠标或键盘事件,并处理这些事件;
- 在设计对话框大小时,Visual C++ 6.0的状态栏右下角会以数字的形式显示对话框尺寸,但是要注意,这个尺寸并非像素,而是一个叫做“DLU”(对话框逻辑单位)的单位。每个水平DLU相当于对话框所用字体平均宽度的1/4,每个垂直DLU相当于对话框所用字体平均高度的1/8;
说明:这样的设置,其优点是可以保证在对话框字体改变时,窗口大小和字体大小比例保持一致,缺点是在设计期无法精确控制对话框像素大小。如果要精确控制对话框大小,可以在对话框初始化时通过代码重新指定对话框尺寸。
阅读全文
1 0
- 1.3 基于对话框的MFC应用程序实例
- 基于对话框的MFC应用程序加入Accelerator
- 基于对话框的MFC应用程序加入Accelerator
- 基于对话框的单实例应用程序
- 再探MFC(一)基于对话框的MFC应用程序项目框架
- MFC的ADO实例(基于VC2012对话框实例)
- .隐藏基于对话框的MFC应用程序窗口的方法
- 隐藏基于对话框的MFC应用程序窗口的方法
- 基于对话框的MFC PocketPC应用程序全屏方法
- 将基于MFC的对话框应用程序修改为服务程序
- 将基于MFC的对话框应用程序修改为服务程序
- 将基于MFC的对话框应用程序修改为服务程序
- 将基于MFC的对话框应用程序修改为服务程序
- 基于对话框的MFC应用程序GetWindowRect(),GetClientRect()探究
- MFC-在基于对话框的应用程序中嵌入CSplitterWnd
- MFC中 给基于对话框的应用程序添加登陆界面
- 将基于MFC的对话框应用程序修改为服务程序
- 将基于MFC的对话框应用程序修改为服务程序---------
- C++ scanf()输入string类型变量
- Flutter进阶—实现动画效果(二)
- 【C++】操作符重载及实现简单的复数类Complex
- Docker和k8的基本操作
- linux运维-squid
- 1.3 基于对话框的MFC应用程序实例
- Java编程思想-18Java I/O系统
- 【共勉】Hi,别总低头写代码!请查收你的新人指导...
- 显性的调用构造函数(感觉没太大用处)
- SVN 第一次提交代码
- git工具使用
- nginx启用HSTS以支持从http到https不通过服务端而自动跳转
- 测试
- ssh-ssh整合(Struts2+Spring+Hibernate)