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的对话框应用程序的方法,实例步骤如下:

  1. 打开Visual C++ 6.0,单击“File”/“New”菜单,此时将弹出项目向导对话框。在对话框中选择项目类型为“MFC AppWizard(exe)”,在项目名称文本框中输入“MfcDialog”,单击“OK”/“确认”按钮进入下一步;图1.1 选择项目类型为MFC应用程序
  2. 在接下来的对话框中,选择“Dialog based”,其余选项采用默认值,单击“Finish”/“确认”按钮完成向导;图1.2  选择新建基于对话框的MFC应用程序
  3. 在完成应用程序向导后,IDE将自动打开对话框的设计界面。在设计界面中,可以通过鼠标拖动的方法改变对话框的大小,还可以将工具箱中的控件拖动到对话框上,已添加控件。在控件上单击鼠标右键,并单击“Properties”/“属性”菜单,可以设置控件的属性。读者可以尝试修改对话框上的静态文本按钮的内容;图1.3  修改标题

1.3.3 程序运行:

图1.4  程序运行

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