《VisualC教程第二版》第4章对话框.ppt
《《VisualC教程第二版》第4章对话框.ppt》由会员分享,可在线阅读,更多相关《《VisualC教程第二版》第4章对话框.ppt(43页珍藏版)》请在三一办公上搜索。
1、第4章对话框,4.1 从C+到Windows编程 4.2 添加并使用对话框 4.3 使用向导创建对话框应用程序 4.4 使用无模式对话框 4.5 通用对话框和消息对话框,4.1从C+到Windows编程,简单的Windows应用程序(1)选择“文件”“新建”菜单命令,显示出“新建”对话框。单击“工程”标签,从列表框中选中Win32 Application(Win32 应用程序)项。,(2)在工程名称框中键入Win32应用程序项目名称Ex_HelloMsg。在“位置”下的编辑框中直接键入文件夹名称,或单击浏览按钮(.)选择一个已有的文件夹。(3)单击确定按钮继续。一个询问项目类型的Win32应用
2、程序向导将被显示,选中An empty project项。单击完成按钮,系统将显示AppWizard的创建信息,单击确定按钮系统将自动创建此应用程序。,4.1从C+到Windows编程,(4)再次选择“文 件”“新建”菜单命令,显示出“新建”对话框。单击“文件”标签,在左边的列表框中选择C+Source File项,在右边的“文件”下的编辑框中键入Ex_HelloMsg.cpp,单击确定按钮。,(5)输入下面的代码:#include int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,in
3、t nCmdShow)MessageBox(NULL,你好,我的Visual C+世界!,问候,0);return 0;,4.1从C+到Windows编程,WinMain函数的原型如下:int WINAPI WinMain(HINSTANCE hInstance,/当前实例句柄HINSTANCE hPrevInstance,/前一实例句柄LPSTR lpCmdLine,/指向命令行参数的指针int nCmdShow)/窗口的显示状态 这里出现了一个新的概念“句柄”(handle),所谓句柄是一个标识Windows资源和设备等对象的变量,或者是一个对操作系统资源的间接引用。每一个用C/C+编写的
4、Windows应用程序都需要Windows.h头文件,它还包含了其他的一些Windows头文件。这些头文件定义了Windows的所有数据类型、函数调用、数据结构和符号常量。程序中,MessageBox是一个Win32 API(Application Programming Interface,应用程序接口)函数,用来弹出一个对话框窗口,显示短信息。该函数第一个参数用来指定父窗口句柄,即对话框所在的窗口句柄。第二、三个参数分别用来指定显示的消息内容和对话框窗口的标题,最后一个参数用来指定在对话框中显示的按钮。,4.1从C+到Windows编程,编程特点 Windows应用程序具有这样的一些特性:
5、消息驱动机制、图形设备接口(GDI)、基于资源的程序设计、动态链接库。消息驱动机制 DOS程序是通过调用系统的函数来获得用户输入的,Windows程序是通过操作系统发送的消息来处理用户输入的。消息驱动的机制是Windows编程的最大特点。WinMain函数通常要完成以下几步工作:定义并调用API函数RegisterClass注册应用程序的窗口类。调用相关API函数创建和显示窗口,并进行其它必要的初始化处理。其中,函数CreateWindow用来创建已注册窗口类的窗口。创建和启动应用程序的消息循环。Windows应用程序接受各种不同的消息,包括键盘消息、鼠标以及窗口产生的各种消息。Windows
6、系统首先将消息放入消息队列中,应用程序的消息循环就是从应用程序的消息队列中检取消息,并将消息发送相应的窗口过程函数中作进一步处理。API函数GetMessage 和DispatchMessage就是起到这样的作用。如果接收到WM_QUIT消息,则退出应用程序。,4.1从C+到Windows编程,图形设备接口(GDI)Windows提供了一个抽象的图形设备接口(Graphical Device Interface,简称GDI),使用户直接利用系统的GDI函数就能方便实现图形和文本的输出,而不必关心与系统相连的外部设备的类型。基于资源的程序设计 Windows应用程序常常包含众多图形元素。每一个这
7、样的资源都用相应的标识符来区分,而且Windows内部也有预定义的资源。在Windows环境下,每一个资源元素都作为一种可以装入应用程序的资源来存放。这些资源可以被编辑、修改,也可以被其他应用程序所共享。动态链接库 动态链接库提供一些特定结构的函数,能被应用程序在运行过程中装入和连接,且多个程序可以共享同一个动态链接库。Windows提供了应用程序可调用的丰富的函数,大多数用于实现其用户界面和在显示器上显示的文本和图形,都是通过动态链接库来实现的。这些动态链接库是一些具有DLL扩展名或者有时是EXE扩展名的文件。在Windows操作系统中,最主要的DLL有KERNEL32.DLL、GDI32.
8、DLL和USER32.DLL。其中,KERNEL32.DLL用来处理存储器低层功能、任务和资源管理等Windows核心服务;GDI32.DLL用来提供图形设备接口,管理用户界面和图形绘制,包括Windows元文件、位图、设备描述表和字体等;而USER32.DLL负责窗口的管理,包括消息、菜单、光标、计时器以及其它与控制窗口显示相关的一些功能。,4.1从C+到Windows编程,基本数据类型,4.1从C+到Windows编程,应用程序框架类型 MFC把编程规范中的大多数内容封装成为各种类,使程序员从繁杂的编程中解脱出来。Visual C+还提供大量的向导和可视化编辑工具,使得用户不需要添加太多的
9、代码就能实现不同风格和用途的应用程序。MFC AppWizard就是Visual C+6.0提供的一个非常有用的向导,它能为用户快速、高效、自动地生成一些常用的标准程序结构和编程风格。MFC AppWizard(exe)应用程序框架包含用户最常用、最基本的三种应用程序类型:单文档、多文档和基于对话框的应用程序。单文档应用程序每次只能打开和处理一个文档 对话框的程序没有菜单、工具栏及状态栏,也不能处理文档,但它的好处是速度快,代码少,程序员所花费的开发和调试时间短。多文档应用程序,能允许同时打开和处理多个文档。与单文档应用程序相比,增加了许多功能,因而需要大量额外的编程工作。,4.1从C+到Wi
10、ndows编程,表4.2 MFC AppWizard创建的应用程序类型,4.1从C+到Windows编程,创建一个应用程序框架 开始 选择“文件”“新建”菜单,在弹出的“新建”对话框中选择“工程”标签,这时显示出一系列的应用程序项目类型;选择MFC AppWizard(exe)的项目类型(该类型用于创建可执行的Windows应用程序),将项目工作文件夹定位在“Visual C+6.0程序对话框”,并在工程框中输入项目名Ex_SDI。,4.1从C+到Windows编程,选择程序类型 单击确定按钮,进行下列选择:(1)从应用程序类型单个文档(Single Document,简称SDI)、多重文档(
11、Multiple Document,简称MDI)和基本对话(Dialog Based,基于对话框的应用程序)中选择“单个文档”。,(2)决定应用程序中是否需要MFC的文档视图(“文档/查看体系结构支持”)结构的支持。若不选定此项,则程序中的磁盘文件的打开、保存以及文档和视图的相互作用等功能需要用户来实现。一般情况下,应选中此项。(3)选择资源所使用的语言,这里是“中文中国”。,4.1从C+到Windows编程,简单创建 保留默认的选项,单击完成按钮,显示出用户在步骤中作出的选择,单击确定按钮系统开始创建。,4.1从C+到Windows编程,编译并运行 到这里为止,用户虽然没有编写任何程序代码,
12、但MFC AppWizard已经根据用户的选择内容自动生成基本的应用程序框架。单击编译工具条上的运行工具按钮“”或按快捷键Ctrl+F5,系统开始编连并运行生成的单文档应用程序可执行文件Ex_SDI.exe。,4.2添加并使用对话框,资源与资源标识 资源的分类 将上例Ex_SDI的项目工作区窗口切换到“ResourceView”页面。,资源可分为下列几类:(1)快捷键列表(Accelerator):一系列组合键的集合,被应用程序用来引发一个动作。该列表一般与菜单命令相关联,用来代替鼠标操作。(2)对话框(Dialog):含有按钮、列表框、编辑框等各种控件的窗口。(3)图标(Icon):代表应用
13、程序显示在Windows桌面上的位图,它同时有3232像素和1616像素两种规格。(4)菜单(Menu):用户通过菜单可完成应用程序的大部分操作。,(5)字串表(String Table):应用程序使用的全局字符串或其他标识符。(6)工具栏按钮(Toolbar):工具栏外观是以一系列具有相同尺寸的位图组成的,它通常与一些菜单命令项相对应,用以提高用户的工作效率。(7)版本信息(Version):包含应用程序的版本、用户注册码等相关信息。,4.2添加并使用对话框,标识符 每一个资源类别下都有一个或多个相关资源,每一个资源均是由标识符来定义的。当添加或创建一个新的资源或资源对象时,系统会为其提供默
14、认的名称,如IDR_MAINFRAME等。用户可重新命名,但要按一定的规则来进行。一般地,要遵循下列规则:(1)在标识符名称中允许使用字母az、AZ、09以及下划线。(2)标识符名称不区分大小写字母,如new_idd与New_Idd是相同的标识符。(3)不能以数字开头,如8BIT是不合法的标识符名。(4)字符个数不得超过247个。,4.2添加并使用对话框,添加对话框资源 添加对话框资源一般可按下列步骤(在上例Ex_SDI基础上进行):(1)选择“插入”“资源”菜单,或按快捷键Ctrl+R打开“插入资源”对话框,在对话框中可以看到资源列表中存在Dialog项,若单击Dialog项左边的“+”号,
15、将展开对话框资源的不同类型选项。,4.2添加并使用对话框,(2)对展开的不同类型的对话框资源不作任何选择,选中“Dialog”,单击新建按钮,系统就会自动为当前应用程序添加了一个对话框资源。,系统为对话框资源自动赋给它一个默认的标识符名称(第一次为IDD_DIALOG1,以后依次为IDD_DIALOG2、IDD_DIALOG3、.)。使用通用的对话框模板创建新的对话框资源。对话框的默认标题为Dialog,有OK和Cancel两个按钮,这两个按钮的标识符分别为IDOK和IDCANCEL。对话框模板资源所在的窗口称为对话框资源编辑器,在这里可以通过控件工具栏和布局工具栏向对话框添加和布局控件,并可
16、设置对话框的属性。,4.2添加并使用对话框,设置对话框属性 在对话框模板处右击鼠标,从弹出的快捷菜单中选择“属性”菜单项。,表4.5 对话框的General属性,4.2添加并使用对话框,将添加的对话框的属性进行如下三点修改:将对话框标识符改成IDD_DIALOG_FIRST;将对话框标题改为“我的第一个对话框”;单击字体按钮,通过弹出的字体对话框将对话框内的文本设置成“宋体,9”,以使自己的对话框和Windows中的对话框保持外观上的一致。,4.2添加并使用对话框,添加和布局控件 在对话框中添加一个控件的方法:在控件工具栏中单击某控件;在对话框指定位置单击鼠标左键,则此控件被添加到对话框的相应
17、位置,再拖动选择框可改变控件的大小和位置。在控件工具栏中单击某控件,此时的鼠标箭头对话框内变成“十”字形状;在指定位置处单击鼠标左键不放,拖动鼠标至满意位置,释放鼠标键。用鼠标左键点中控件工具栏中的某控件,并按住鼠标左键不放;在移动鼠标到对话框的指定位置的过程中,用户会看到一个虚线框,下面带有该控件的标记;释放鼠标左键,新添加的控件立即出现在对话框中。,4.2添加并使用对话框,控件的选取 选取单个控件,则可以下列方法。用鼠标直接选取。用助记符来选取。用Tab键选取。对于多个控件的选取,可采用下列方法:先在对话框内按住鼠标左键不放,拖出一个大的虚框,然后释放鼠标,则被该虚框所包围的控件都将被选取
18、。先按住Shift键不放,然后用鼠标选取控件,直到所需要的多个控件选取之后再释 放Shift键。若在选取时,对已选取的控件再选取一下,则取消该控件选取。需要注意的是:(1)一旦单个控件被选取后,其四周由选择框包围着,选择框上还有几个(通常是八个)蓝色实心小方块,拖动它可改变控件的大小。(2)多个控件被选取后,其中只有一个控件的选择框有几个蓝色实心小方块,这个控件称为主要控件,而其他控件的选择框的小方块是空心的。,4.2添加并使用对话框,控件的删除、复制和布局 与布局工具相对应的菜单命令在“编排”菜单下,而且大部分命令均有相应的快捷键,图4.17“编排”菜单命令项,4.2添加并使用对话框,表4.
19、6“编排”菜单命令的快捷键及功能描述,注意:大多数布置控件的命令使用前,都需要用户选取多个控件,且“主要控件”起到了关键作用。例如用户选取多个控件后,使用“Make Same Size”命令只改变其它控件的大小,并与“主要控件”的尺寸一致。因此,在多个控件的布置过程中,常需要重新设置“主要控件”。设置的方法是按住Ctrl或Shift键,然后用鼠标单击所要指定的控件即可。为了便于用户在对话框内精确定位各个控件,系统还提供了网格、标尺等辅助工具。在图4.16的控件布局工具栏的最后两个按钮分别用来网格和标尺的切换。一旦网格显示,添加或移动控件时都将自动定位在网格线上。,4.2添加并使用对话框,测试对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VisualC教程第二版 VisualC 教程 第二 对话框

链接地址:https://www.31ppt.com/p-5896221.html