VC++60基本控件的使用资料
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
方法如下: (a)编辑对话框资源。
在Insert菜单中选择Resource菜单项或直接按下Ctrl+R 加速键,打开Insert Resource对话框,如图1所示。
2020年9月17日4时24分
图1
14
在对话框中选取Dialog图标,然后单击New按钮,这时 将建立一个新的对话框,并打开对话框编辑器,如图 2所示。
IDD_DIALOGModalLess,this);
}
m_pModelless->ShowWindow(SW_SHOW);
//显示对话框
2020年9月17日4时24分
18
(3)使用非模态对话框
注意:
(a)非模态对话框的模板资源必须具有Visible风格 ; (b)非模态对话框对象是用new操作符动态创建的 ; (c)通过调用CDialog::Create()函数来启动非模态
图2
2020年9月17日4时24分
15
(b)为对话框建立一个新类,然后创建对话框类的对 象,才能使用这个资源。
通过类向导建立
(c)打开模态对话框。 在某类中,要使用模态对话框,则:
加入头文件:该模态对话框类的头文件。 看演示
定义模态对话框类对象: 类名 对象名;
显示该模态对话框: 对象.DoModal( );
2020年9月17日4时24分
16
(3)使用非模态对话框
使用非模态对话框的方法如下: (a)首先建立非模态对话框资源和对话框类,与前
(a)和(b)两步一样。
(b)在要用到的类中定义一个成员变量,即一个指向 非模态对话框的指针。
比如:DialModalLess *m_pModelless; //定义时,需要包含头文件。
如果必要,用ClassWizard重载此函数。
2020年9月17日4时24分
9
(4)对话框数据交换和数据检验机制
控件与用户的数据交流和检验机制通过 CDialog::DoDataExchange()函数来完成,
其原型为:virtual void DoDataExchange ( CDataExchange * pDX );
(2)添加到对话框上 编辑对话框资源,选择对话框属性,在弹出的属性对
话框中,在菜单选项中选中需要添加的菜单ID,即 可。
2020年9月17日4时24分
11
添加菜单后的界面图
2020年9月17日4时24分
12
源自文库
4.模态对话框和非模态对话框
(1)含义 对话框按其动作模式分为“有模式”和“无模式”两大
类。 有模式对话框在被关闭之前,用户无法再进行其它工
普通高等教育“十一五”国家级规划教材 中国高等院校计算机基础教育课程体系规划教材
谭浩强 编著
C++面向对象程序设计
湖南工业大学 计算机与通信学院
2020年9月17日4时24分
1
第16讲 VC++6.0基本控件的使用
16.1 授课内容 VC++6.0基本控件的使用。主要内容: 1.基于对话框结构的程序设计; 2.在基于对话框结构的界面上添加菜单; 3.创建模态对话框和非模态对话框; 4.常用控件的使用。
第2步:用于设置应用程序的属性,包括是否使用版权对话框、 是否需要生成上下文有关的帮助、是否使用3D风格的控件, 以及是否需要对ActiveX控件的支持等问题。
第3步:用于设置程序风格。 第4步:用于检查和修改拟为应用程序生成的类的有关参数 。 即生成基于对话框的应用程序。
2020年9月17日4时24分
对话框 ;
(d)必须重载并重新编写对话框的OnOK()和 OnCancel()函数;
2020年9月17日4时24分
17
(3)使用非模态对话框
(c)用下列语句打开非模态对话框:
//判断指针是否为NULL,如果为NULL,说明对话框没
有创建,则动态创建对话框
if(m_pModelless==NULL)
看演示
{
m_pModelless=new DialModalLess();
m_pModelless->Create(
16.3 授课重点 1.重点是常用控件的使用。
16.4 授课难点 1.难点是熟练掌握常用控件的使用方法。
2020年9月17日4时24分
4
1.基于对话框的应用程序设计
基于对话框的应用程序结构适合于比较简单的应用程序。
(1)生成基于对话框的应用程序
第1步:对话框中,选择生成Dialog Based(基于对话框)的应 用程序即可 。
2020年9月17日4时24分
7
设置界面风格后的效果图
2020年9月17日4时24分
8
(3)对话框的初始化
对话框的初始化工作一般在构造函数和 CDialog::OnInitDialog ()函数中完成。
在对话框创建时,会收到WM_INITDIALOG消息,对话 框对该消息的处理函数是OnInitDialog()。
5
利用向导生成的基于对话框的应用程序界面:
2020年9月17日4时24分
6
(2)设置对话框界面的属性
编辑主对话框,按右键选择属性,则可设置对话框的属 性。
常用的属性有: 基本属性(General):字体、菜单、对话框所处位置
等; 风格(Styles):系统菜单、最大化、最小化、滚动条等; 更多风格(More Styles)、扩展风格、更多扩展风格。
成员变量的值 与 控件显示的值之间的传递方向由下面 两个函数决定:
UpdateData(TRUE); //从对话框到变量 UpdateData(FALSE); //从变量到对话框
2020年9月17日4时24分
10
2.在基于对话框结构的界面上添加菜单
(1)新建菜单资源 在资源工作区中添加一新的菜单,然后编辑此菜单。
2020年9月17日4时24分
2
第16讲 VC++6.0基本控件的使用
16.2 授课要求 1.掌握基于对话框结构的程序设计; 2.掌握在基于对话框结构的界面上添加菜单; 3.掌握创建模态对话框和非模态对话框; 4.熟悉常用控件的使用。
2020年9月17日4时24分
3
第16讲 VC++6.0基本控件的使用
作; 无模式对话框被关闭之前,用户可以在应用程序的其
它窗口中进行工作。
当有模式对话框被打开之后,它就接管了父窗口的输入
控制权,只有当用户关闭了该对话框之后,控制权才
交给父窗口。而无模式对话框则与父窗口共享控制权,
202用0年9户月17可日4以时24在分 主窗口和对话框之间来回切换。
13
(2)使用有模式对话框
在Insert菜单中选择Resource菜单项或直接按下Ctrl+R 加速键,打开Insert Resource对话框,如图1所示。
2020年9月17日4时24分
图1
14
在对话框中选取Dialog图标,然后单击New按钮,这时 将建立一个新的对话框,并打开对话框编辑器,如图 2所示。
IDD_DIALOGModalLess,this);
}
m_pModelless->ShowWindow(SW_SHOW);
//显示对话框
2020年9月17日4时24分
18
(3)使用非模态对话框
注意:
(a)非模态对话框的模板资源必须具有Visible风格 ; (b)非模态对话框对象是用new操作符动态创建的 ; (c)通过调用CDialog::Create()函数来启动非模态
图2
2020年9月17日4时24分
15
(b)为对话框建立一个新类,然后创建对话框类的对 象,才能使用这个资源。
通过类向导建立
(c)打开模态对话框。 在某类中,要使用模态对话框,则:
加入头文件:该模态对话框类的头文件。 看演示
定义模态对话框类对象: 类名 对象名;
显示该模态对话框: 对象.DoModal( );
2020年9月17日4时24分
16
(3)使用非模态对话框
使用非模态对话框的方法如下: (a)首先建立非模态对话框资源和对话框类,与前
(a)和(b)两步一样。
(b)在要用到的类中定义一个成员变量,即一个指向 非模态对话框的指针。
比如:DialModalLess *m_pModelless; //定义时,需要包含头文件。
如果必要,用ClassWizard重载此函数。
2020年9月17日4时24分
9
(4)对话框数据交换和数据检验机制
控件与用户的数据交流和检验机制通过 CDialog::DoDataExchange()函数来完成,
其原型为:virtual void DoDataExchange ( CDataExchange * pDX );
(2)添加到对话框上 编辑对话框资源,选择对话框属性,在弹出的属性对
话框中,在菜单选项中选中需要添加的菜单ID,即 可。
2020年9月17日4时24分
11
添加菜单后的界面图
2020年9月17日4时24分
12
源自文库
4.模态对话框和非模态对话框
(1)含义 对话框按其动作模式分为“有模式”和“无模式”两大
类。 有模式对话框在被关闭之前,用户无法再进行其它工
普通高等教育“十一五”国家级规划教材 中国高等院校计算机基础教育课程体系规划教材
谭浩强 编著
C++面向对象程序设计
湖南工业大学 计算机与通信学院
2020年9月17日4时24分
1
第16讲 VC++6.0基本控件的使用
16.1 授课内容 VC++6.0基本控件的使用。主要内容: 1.基于对话框结构的程序设计; 2.在基于对话框结构的界面上添加菜单; 3.创建模态对话框和非模态对话框; 4.常用控件的使用。
第2步:用于设置应用程序的属性,包括是否使用版权对话框、 是否需要生成上下文有关的帮助、是否使用3D风格的控件, 以及是否需要对ActiveX控件的支持等问题。
第3步:用于设置程序风格。 第4步:用于检查和修改拟为应用程序生成的类的有关参数 。 即生成基于对话框的应用程序。
2020年9月17日4时24分
对话框 ;
(d)必须重载并重新编写对话框的OnOK()和 OnCancel()函数;
2020年9月17日4时24分
17
(3)使用非模态对话框
(c)用下列语句打开非模态对话框:
//判断指针是否为NULL,如果为NULL,说明对话框没
有创建,则动态创建对话框
if(m_pModelless==NULL)
看演示
{
m_pModelless=new DialModalLess();
m_pModelless->Create(
16.3 授课重点 1.重点是常用控件的使用。
16.4 授课难点 1.难点是熟练掌握常用控件的使用方法。
2020年9月17日4时24分
4
1.基于对话框的应用程序设计
基于对话框的应用程序结构适合于比较简单的应用程序。
(1)生成基于对话框的应用程序
第1步:对话框中,选择生成Dialog Based(基于对话框)的应 用程序即可 。
2020年9月17日4时24分
7
设置界面风格后的效果图
2020年9月17日4时24分
8
(3)对话框的初始化
对话框的初始化工作一般在构造函数和 CDialog::OnInitDialog ()函数中完成。
在对话框创建时,会收到WM_INITDIALOG消息,对话 框对该消息的处理函数是OnInitDialog()。
5
利用向导生成的基于对话框的应用程序界面:
2020年9月17日4时24分
6
(2)设置对话框界面的属性
编辑主对话框,按右键选择属性,则可设置对话框的属 性。
常用的属性有: 基本属性(General):字体、菜单、对话框所处位置
等; 风格(Styles):系统菜单、最大化、最小化、滚动条等; 更多风格(More Styles)、扩展风格、更多扩展风格。
成员变量的值 与 控件显示的值之间的传递方向由下面 两个函数决定:
UpdateData(TRUE); //从对话框到变量 UpdateData(FALSE); //从变量到对话框
2020年9月17日4时24分
10
2.在基于对话框结构的界面上添加菜单
(1)新建菜单资源 在资源工作区中添加一新的菜单,然后编辑此菜单。
2020年9月17日4时24分
2
第16讲 VC++6.0基本控件的使用
16.2 授课要求 1.掌握基于对话框结构的程序设计; 2.掌握在基于对话框结构的界面上添加菜单; 3.掌握创建模态对话框和非模态对话框; 4.熟悉常用控件的使用。
2020年9月17日4时24分
3
第16讲 VC++6.0基本控件的使用
作; 无模式对话框被关闭之前,用户可以在应用程序的其
它窗口中进行工作。
当有模式对话框被打开之后,它就接管了父窗口的输入
控制权,只有当用户关闭了该对话框之后,控制权才
交给父窗口。而无模式对话框则与父窗口共享控制权,
202用0年9户月17可日4以时24在分 主窗口和对话框之间来回切换。
13
(2)使用有模式对话框