MFC对话框创建

一、模态对话框

模态对话框有阻塞功能,打开之后不能操作其他对话框。

1、新建MFC项目

项目名称只等是英文,不能加入数字、下划线和空格。

MFC对话框创建_第1张图片

2、选择基于对话框

MFC对话框创建_第2张图片

3、插入新的对话框

右键Dialog,插入Dialog。

4、给新的对话框重写ID

右键新的对话框,选中属性,修改。

模态为IDD_EXEC,非模态为IDD_SHOW。

MFC对话框创建_第3张图片

5、为模态对话框添加类

右键选中的对话框,添加类。创建后会自动弹出.h的对话框。

MFC对话框创建_第4张图片

 MFC对话框创建_第5张图片

6、添加按钮

在主对话框(创建项目就会自动生成),放置按钮(工具栏里拖拽)。

MFC对话框创建_第6张图片

 有三种方式为按钮添加事件。

1)点击按钮,右键属性,闪电图标。

MFC对话框创建_第7张图片

2)右键按钮,添加事件处理程序。

3)双击按钮,这个只能添加单机按钮的事件,其他事件如双击按钮需用前两种方法。

双击之后会自动生成如下代码,自己写入最后两行代码即可。

MFC对话框创建_第8张图片

  然后引入头文件。

二、非模态对话框

1、为非模态对话框添加类

右键对话框,添加类。

MFC对话框创建_第9张图片

 2、双击主窗口种的非模态按钮,添加事件

1)在CCDialogOneDlg.h(打开类视图,双击CCDialogOneDlg打开CCDialogOneDlg.h)种添加成员变量,CDlgShow dlg。

CCDialogOneDlg为创建项目后生成的类。类名为项目名称。

MFC对话框创建_第10张图片

 2)在CCDialogOneDlg类中的OnInitDialog函数中添加dlg.Create(IDD_SHOW)。IDD_SHOW为窗口的ID。

dlg.Creat()的第一个形参为窗口的ID,第二个形参有默认值不用写。

创建窗口只能创建一次,多次就会崩掉,因此放到OnInitDialog中。

MFC对话框创建_第11张图片

 3)在按钮处理函数(双击按钮产生的函数)中写入 dlg.ShowWindow(SW_SHOWNORMAL)。

MFC对话框创建_第12张图片

dlg.ShowWindow在MFC帮助文档中查找形参使用方法。

ShowWindow的父类为CWnd。在帮助文档中查找得加上作用域。

MFC对话框创建_第13张图片

三、演示

MFC对话框创建_第14张图片

点击模态按钮。

MFC对话框创建_第15张图片

点击非模态按钮。

MFC对话框创建_第16张图片

四、改变和获取按钮文本

1、添加变量,设为私有、设置变量名为m_btn。

MFC对话框创建_第17张图片

2、在双击按钮后生成的代码框架中添加如下代码。

MFC对话框创建_第18张图片

 3、演示

MFC对话框创建_第19张图片

 MFC对话框创建_第20张图片

五、设置按钮状态

1、在上述代码后加入如下代码即可。实现效果:点击一次就不能再点击。

MFC对话框创建_第21张图片

2、演示

MFC对话框创建_第22张图片

MFC对话框创建_第23张图片

 MFC对话框创建_第24张图片

你可能感兴趣的:(MFC,c++)