visual c实用教程 第6章:程序界面的数据——资源.ppt

上传人:s****8 文档编号:69356269 上传时间:2023-01-02 格式:PPT 页数:33 大小:389KB
返回 下载 相关 举报
visual c实用教程 第6章:程序界面的数据——资源.ppt_第1页
第1页 / 共33页
visual c实用教程 第6章:程序界面的数据——资源.ppt_第2页
第2页 / 共33页
点击查看更多>>
资源描述

《visual c实用教程 第6章:程序界面的数据——资源.ppt》由会员分享,可在线阅读,更多相关《visual c实用教程 第6章:程序界面的数据——资源.ppt(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Visual C+Visual C+第第6章章 程序界面的数据程序界面的数据资源资源6.16.1资源概述资源概述6.26.2 菜单菜单、对话框资源及其应用、对话框资源及其应用 习题习题n教学要点教学要点 本章内容主要包括VC应用程序中的资源种类及建立,在注册窗口类时设置图标、光标资源,简单菜单资源和对话框资源的使用。要求了解在窗口函数中对菜单消息的处理、调用对话框的方法和对话框对用户输入信息的处理,熟悉资源的种类并学会利用资源编辑器建立各种资源,掌握API编程中利用API函数调用资源的方法,熟练掌握常用资源的常用属性含义。Visual C+Visual C+6.1.16.1.1 资源定义资源定

2、义 6.1.26.1.2 WindowsWindows资源种类资源种类 6.1.36.1.3 使用使用WindowsWindows资源的函数资源的函数 6.1.46.1.4 向项目中添加资源向项目中添加资源 6.1.56.1.5 一个使用资源的实例一个使用资源的实例 *6.1.6*6.1.6 使用资源编程的好处使用资源编程的好处 6.16.1 资源概述资源概述Visual C+Visual C+6.1.1 6.1.1 资源定义资源定义 资源是Windows编程中不可缺少的重要组成部分。从广义上讲,计算机系统乃至网络中能提供给运行程序所用的东西,都可称为资源。但在Windows应用程序中所谈及的

3、资源,是指资源描述文件中可重复利用的只读数据。资源可以由用户自定义,但用得更多的是由系统定义的标准资源,它们包括图标、菜单等。简 单 来 说,资 源 是 在 特 定 地 方 资 源 文 件(Resource File)中定义的一个只读数据对象,该文件的扩展名为.RC,由应用程序向导创建并可手工添加与修改。Visual C+Visual C+6.1.6.1.2 2WindowsWindows资源种类资源种类 1图标(ICON)资源 在API开发的应用程序中定义大图标和小图标是填充WNDCLASSEX结构中的相应域,其典型的代码如下:wcexwcex.cbSizecbSize=sizeof siz

4、eof(WNDCLASSEX);(WNDCLASSEX);wcexwcex.hIconhIcon=LoadIcon LoadIcon(hInstancehInstance,(LPCTSTR)IDI_HELLO);,(LPCTSTR)IDI_HELLO);/窗口的大图标窗口的大图标wcexwcex.hCursorhCursor=LoadCursor LoadCursor(NULL,IDC_ARROW);(NULL,IDC_ARROW);/窗口采用箭头光标窗口采用箭头光标wcexwcex.hIconSmhIconSm=LoadIconLoadIcon(wcexwcex.hInstancehInst

5、ance,(LPCTSTR)IDI_SMALL);,(LPCTSTR)IDI_SMALL);/设置窗口的小图标设置窗口的小图标WNDCLASSEXWNDCLASSEX wcex wcex;/;/定义窗口类变量定义窗口类变量Visual C+Visual C+2菜单(MENU)资源菜单的主要组成部分有:(1)窗口主菜单栏(位于窗口的标题栏下方,其菜单项通常为下拉式菜单);(2)下拉式菜单框;(3)菜单项热键标识;(4)菜单项加速键标识;(5)菜单项分隔线。在API开发的应用程序中挂接菜单资源的方法是填充WNDCLASSEX结构中的相应域LpszMenuName,其典型的代码如下:wcex.lps

6、zMenuName=(LPCSTR)IDC_HELLO;/设置窗口的菜单6.1.26.1.2WindowsWindows资源种类资源种类(续)续)Visual C+Visual C+3.加速键(ACCELERATOR)资源 加速键,又称键盘快捷键,一个加速键就是一个按键或几个按键的组合,它用于激活特定的命令。图6.1为加速键表的编辑器。4.字符串(String Table)资源 字符串资源中包含了应用程序中所用的字符串标识符、号码以及正文列表。在应用程序中使用字符串表的步骤为:首先利用字符串表编辑器编辑所需的字符串;其次从字符串表中利用函数LoadString()装入要用的字符串;最后是显示字

7、符串或对字符串进行其它处理。5光标(CURSOR)资源6对话框资源(Dialog)6.1.2WindowsWindows资源种类资源种类(续)(续)Visual C+Visual C+图6.1 加速键表编辑器Visual C+Visual C+6.1.3 6.1.3 使用使用WindowsWindows资源的函数资源的函数 Windows有很多种资源,常见的装载资源的函数有:常见的装载资源的函数有:(1)装载图标的函数LoadCursor();(2)装载加速键的函数LoadAccelerators();(3)装载字符串的函数LoadString();(4)装载光标的函数LoadCursor()

8、;(5)装载位图的函数LoadBitmap();Visual C+Visual C+6.1.4 6.1.4 向项目中添加资源向项目中添加资源 VC可可以以处处理理的的资资源源包包括括加加速速键键、菜菜单单、工工具具栏栏等等。在在应应用用程程序序中中往项目中加入资源,其操作方法如下:往项目中加入资源,其操作方法如下:1如果项目中尚无资源文件,则使用Developer Studio的菜单项File|New,从Files选项卡中选择Resource Script(资源描述),并在选项卡右方填入资源文件名(通常与项目名称相同)后按OK按钮。2使用Developer Studio的菜单选项Insert|

9、Resource调出Insert Resource对话框,然后在其中选择相应的资源如Bitmap(位图)、Icon(图标)、Menu(菜单)等。3如果想要使用的资源不存在,则单击对话框右方的New按钮即可进入相应的资源编辑器。4如果想要使用的资源已经在磁盘中(如想使用某个目录下的.BMP文件),则单击对话框右方的Import按钮,输入图像文件的路径。Visual C+Visual C+6.1.5 6.1.5 一个使用资源的实例一个使用资源的实例【例【例6-16-1】演示图标、光标、字符串、加速键资源的例子。】演示图标、光标、字符串、加速键资源的例子。1 1导入图标和光标资源用上一节的方法在He

10、llo工程中导入(import)一个外部的光标文件于资源IDC_CURSOR1中,再导入一个外部的图标文件于资源IDC_ICON1中(在ResourceView中,用鼠标右键单击顶层节点Hello Resources,在弹出菜单中选择Import)。2 2增加字符串和加速键资源在字符串资源表中增加一个字符串资源IDS_LBUTTONDOWN,其Caption为“您好,您按了鼠标左键,这是一个字符串资源”;完后,在加速键表中增加一个加速键项IDM_EXIT,其键值为Ctrl+E。3 3在注册窗口类函数MyRegisterClass中设置图标和光标资源Visual C+Visual C+6.1.5

11、 6.1.5 一个使用资源的实例一个使用资源的实例(续)(续)ATOM ATOM MyRegisterClassMyRegisterClass(HINSTANCE(HINSTANCE hInstance hInstance)WNDCLASSEXWNDCLASSEX wcex wcex;/;/定义窗口类变量定义窗口类变量wcexwcex.lpfnWndProclpfnWndProc=(WNDPROC)=(WNDPROC)WndProcWndProc;wcexwcex.hInstancehInstance=hInstance hInstance;/;/当前实例句柄当前实例句柄wcexwcex.hI

12、conhIcon=LoadIcon LoadIcon(hInstancehInstance,(LPCTSTR)IDI_ICON1);,(LPCTSTR)IDI_ICON1);/窗口的大图标窗口的大图标wcexwcex.hCursorhCursor=LoadCursor LoadCursor(hInstancehInstance,(LPCTSTR)IDC_CURSOR1);,(LPCTSTR)IDC_CURSOR1);/窗口的光标窗口的光标wcexwcex.lpszMenuNamelpszMenuName=(LPCSTR)IDC_HELLO;/=(LPCSTR)IDC_HELLO;/加载菜单加载

13、菜单wcexwcex.hIconSmhIconSm=LoadIcon LoadIcon(wcexwcex.hInstancehInstance,(LPCTSTR)IDI_ICON1);,(LPCTSTR)IDI_ICON1);/设置窗口的小图标设置窗口的小图标returnreturn RegisterClassEx RegisterClassEx(&(&wcexwcex);/);/注册窗口注册窗口类类wcexwcex Visual C+Visual C+4 4在窗口函数中添加对WM_LBUTTONDOWN的处理LRESULT LRESULT CALLBACKCALLBACK WndProcWn

14、dProc(HWND(HWND hWndhWnd,UINT UINT message,message,WPARAMWPARAM wParamwParam,LPARAMLPARAM lParam lParam).int wmIdint wmId,wmEvent wmEvent;PAINTSTRUCTPAINTSTRUCT ps ps;HDCHDC hdc hdc;static charstatic char szCaption szCaption=“=“窗口外的世界很精彩,窗口外的世界很精彩,窗口内的世界很深奥!窗口内的世界很深奥!“;“;switch(message)switch(messag

15、e)case WM_COMMAND:case WM_COMMAND:6.1.5 6.1.5 一个使用资源的实例一个使用资源的实例(续)(续)Visual C+Visual C+case WM_LBUTTONDOWN:case WM_LBUTTONDOWN:TCHAR TCHAR szHelloszHelloMAX_LOADSTRING;MAX_LOADSTRING;/将字符串将字符串IDS_LBUTTONDOWIDS_LBUTTONDOW装到字符数组装到字符数组szHelloszHello中中LoadStringLoadString(hInsthInst,IDS_LBUTTONDOWN,IDS

16、_LBUTTONDOWN,szHello szHello,MAX_LOADSTRING);,MAX_LOADSTRING);MessageBoxMessageBox(hWndhWnd,szHelloszHello,问候问候,MB_OK);MB_OK);break;break;case WM_DESTROY:case WM_DESTROY:PostQuitMessagePostQuitMessage(0);(0);break;break;default:default:return return DefWindowProcDefWindowProc(hWndhWnd,message,messag

17、e,wParamwParam,lParam lParam););return 0;return 0;6.1.5 6.1.5 一个使用资源的实例一个使用资源的实例(续)(续)Visual C+Visual C+5 5在WinMain()中加载加速键资源intint APIENTRY APIENTRY WinMain WinMain()()MSG MSG msgmsg;/;/定义消息变量定义消息变量msgmsg HACCEL HACCEL hAccelTablehAccelTable;/;/定义加速键句柄定义加速键句柄hAccelTablehAccelTablehAccelTablehAccelT

18、able=LoadAcceleratorsLoadAccelerators(hInstancehInstance,(LPCTSTR)IDC_HELLO);,(LPCTSTR)IDC_HELLO);/装载加速键表装载加速键表 /主消息循环主消息循环while(while(GetMessageGetMessage(&(&msgmsg,NULL,0,0),NULL,0,0)return msg.return msg.wParamwParam;6.1.5 6.1.5 一个使用资源的实例一个使用资源的实例(续)(续)Visual C+Visual C+*6.1.6*6.1.6 使用资源编程的好处使用资源

19、编程的好处 大大家家知知道道,VCVC是是一一种种基基于于资资源源编编程程的的语语言言。在在DOSDOS时时代代的的编编程程,那那时时若若想想编编写写数数据据驱驱动动的的程程序序,常常常常把把数数据据编编码码成成初初始始化化常常量量,或或者者提提供供独独立立的的数数据据文文件件让让你你的的程程序序来来读读。而而在在WindowsWindows下下使使用用VCVC编编程程时时,却却常常常常把把大大量量的的数数据据保保存存在在资资源源文文件件中中,链链接接程程序序把把二二进进制制的的资资源源文文件件连连接接到到VCVC编编译译器器的的输输出出来来产产生生一一个个可可执执行行文文件件。一一般般来来说

20、说,在在完完整整的的VCVC程程序序中中,资资源源同同源源代代码码分分离离,这这样样大大大大方方便便了了用用户户的的一一切切操操作作。一一方方面面用用户户可可以以多多次次引引用用同同一一个个资资源源的的定定义义,减减少少后后续续程程序序的的开开发发时时间间;另另一一方方面面,用用户户可可以以在在不不影影响响源源代代码码的的情情况况下下修修改改资资源源,并并能能同同时时开开发发资资源源和和源源代代码,缩短软件的修改过程。码,缩短软件的修改过程。资资源源对对软软件件的的本本地地化化起起着着重重要要的的作作用用。例例如如,为为了了支支持持一一个个软软件件适适合合于于多多种种不不同同的的语语言言(如如

21、中中文文和和日日文文的的版版本本),可可以以通通过过使使所所有有的的字字符符串串以以资资源源方方式式存存储储来来实实现现,这这样样翻翻译译人人员员不不用用阅阅读读并并修修改改源源程程序序代代码码,只要翻译资源文件接可以了。只要翻译资源文件接可以了。Visual C+Visual C+6.26.2 菜单、对话框资源及其应用菜单、对话框资源及其应用6.2.16.2.1 一个使用菜单、对话框资源的实例一个使用菜单、对话框资源的实例6.2.26.2.2 菜单资源的创建菜单资源的创建 6.2.36.2.3 处理菜单消息处理菜单消息 6.2.4 6.2.4 对话框资源的编辑对话框资源的编辑 6.2.56.

22、2.5 在对话框资源中添加控件在对话框资源中添加控件 6.2.66.2.6 对话框资源与控件属性的设计对话框资源与控件属性的设计 6.2.7 6.2.7 对话框的调用与响应对话框的调用与响应6.2.86.2.8*VCVC程序程序ResourceViewResourceView的使用的使用方法方法Visual C+Visual C+6.2.1 6.2.1 一个使用菜单、对话框一个使用菜单、对话框资源的实例资源的实例 我们在前述程序的基础上再增加一些简单的功能。在主菜单中增加“显示方式”菜单。当选中它时,下拉出“最大化”、“常规化”和“改变位置”项。通过这些菜单选项,可以改变Windows应用程序

23、窗口的大小。另外,本程序阐述了一个“关于”对话框资源的使用,程序运行时,单击“help”可调出“关于”对话。【例【例6-6-】演示菜单、对话框资源的例子。程序是在前面的基础】演示菜单、对话框资源的例子。程序是在前面的基础上修改的,首先将原先的工程复制一份,在备份上进行修改。上修改的,首先将原先的工程复制一份,在备份上进行修改。Visual C+Visual C+6.2.2 6.2.2 菜单资源的创建菜单资源的创建 菜单是一资源,因此也要通过Developer Studio的资源编辑器进行编辑。“弹弹出出式式菜菜单单”(popup)、“选选项项”(Menu Item)和和“分分隔隔线线(Sepa

24、rator)是构成是构成“树状菜单的三大要素树状菜单的三大要素”。通过菜单中的“弹出式菜单”可以调出一个子菜单,分隔线用来区分一组选项。通过菜单中的“选项”可以调用应用程序的某项功能。每个选项都有一个标识符,而且只有选项才有标识符,弹出式菜单和分隔线都没有标识符,在应用程序中,只对选项编程。在Workspace窗口中选择ResourceView选项卡,打开Hello工程的资源列表,选中“Menu”资源项目下的“IDC_HELLO”,可以看到应用程序缺省定义的菜单资源形式,它包含如图6.2所示的菜单中的“File”和“help”两个菜单项。Visual C+Visual C+在标识符下面有一些复

25、选框表示菜单项的属性,如SeparatorSeparator表表示示分分隔隔线线,Pop-upPop-up选选项项可可引引出出一一子子菜菜单单。具有Popup性质的菜单项没有标识符,因为在程序中只对具体的菜单选项编程,Popup菜单只起将若干个选项组合在一起的功能。Checked表示在菜单选项前打勾;Inactive表示该选项失效,但还可正常显示;Grayed也表示该选项失效,但会以灰色显示。Caption是菜单项的文字部分(标题),如果在其中的某字母前加一个“&”符号,则该字母在显示时带一下划线,该字母就成为这个菜单的记忆键。在程序运行时,用户可通过按下组合键“Alt+记忆键”来使用菜单选项

26、。Prompt框是该菜单项的提示文字,当选中该菜单时,该字符串就会显示在框架的状态栏中。Visual Studio支持鼠标拖曳调整菜单项位置。6.2.2 6.2.2 菜单资源的创建菜单资源的创建(续)(续)Visual C+Visual C+图6.2 菜单编辑器及属性设置 Visual C+Visual C+6.2.3 6.2.3 处理菜单消息处理菜单消息 当用户选择了一个菜单选项后,就会向应用程序发送一个命令消息WM_COMMAND,窗口函数通过参数wParam来确定是哪一个菜单选项发出的。创建菜单后,就得为每个菜单项定义动作,使得用户在选中菜单项以后得到必要的响应。这是在窗口函数的WM_C

27、OMMAND消息处理代码中实现的。示例程序的菜单响应代码如下:显示代码Visual C+Visual C+6.2.4 6.2.4 对话框资源的编辑对话框资源的编辑 对话框是一种常用的输入输出界面,是一种特殊的窗口。它的主要功能是输出信息和接收用户的输入输出信息和接收用户的输入。利用Developer Studio提供的可视化设计工具,可以方便地设计对话框资源。如果需要向项目中插入对话框资源,可选择Developer Studio菜 单 中 的 Insert|Resource选 项,并 在 Insert Resource对话框中双击Dialog项。完成后在Workspace窗口的Resource

28、 View中就会出现一个名为IDD_DIALOG1的新对话框模板资源。在Workspace窗口中选择ResourceView选项卡,打开Hello工程的资源列表,双击“Dialog”资源项目下的“IDD_ABOUTBOX”,就可以看到应用程序缺省定义的该“关于”对话框的形式。如图6.3所示。Visual C+Visual C+图图6.3对话框资源编辑器对话框资源编辑器返回6.2.4返回6.2.5Visual C+Visual C+6.2.5 6.2.5 在对话框资源中添加控件在对话框资源中添加控件 在资源编辑窗口旁边有一个控件面板。在控件面板上用鼠标选择一个控件,然后在对话框中单击,则相应的控

29、件就放置到控件框模板中的鼠标点击位置。如果不能确定控件的类型,只要将鼠标在控件按钮上停留片刻,则会显示一个工具提示,指出按钮所代表的控件名称。如果看不到控件面板,可以在Developer Studio的工具条的空白处单击鼠标右键,并在随之弹出的菜单中选择Controls。当用鼠标选择对话框或控件时,就出现一个围绕该对话框或控件的虚线边框,拖动虚线边框的边界可以改变对话框或控件的大小。同时在Developer Studio的状态条中会显示出所选择对象的坐标和尺寸。我们在对话框资源“IDD_ABOUTBOX”中,添加一个按钮控件,其ID为“IDC_BUTTON1”,Caption为“欢迎”。如图6

30、.3所示。Visual C+Visual C+6.2.6 6.2.6 对话框资源对话框资源与控件属性的设计与控件属性的设计 在控件属性对话框的常规属性中,有一些控件共同的属性:在控件属性对话框的常规属性中,有一些控件共同的属性:(1)ID属性。用于指定控件的标识符,Windows系统靠ID来区分不同的控件。(2 2)Caption(标题)属性。静态文本、成组框、按钮、检查框、单选按钮等控件可以显示标题,用来对控件进行文字说明。(3 3)Visible(可视)属性。用来指定控件是否可见;(4 4)Disable(使能)属性。允许或禁止该控件。一个禁止的控件呈灰色显示,不能接收任何输入;(5 5)

31、Tabstop属性。用户可以按Tab键将当前的焦点移动到具有Tabstop属性的控件上。Tab移动的顺序可以由用户指定。按Ctrl+D显示Tab顺序,用户可以用鼠标重新指定Tab顺序。默认的Tab顺序是控件的创建顺序(6 6)Group属性。用来指定一组控件,用户可以用箭头键在该组控件内移动。Visual C+Visual C+6.2.7 6.2.7 对话框的调用与响应对话框的调用与响应 对话框的编程要经历编辑对话框资源、显示对话框资源、构造对话框消息处理函数以及关闭对话框等具体操作。1 1用函数用函数DialogBoxDialogBox()()显示对话框显示对话框 用对话框编辑器中将对话框资

32、源编辑完后,应用程序可通过DialogBox()函数在窗口中显示对话框,并在对话框退出后返回,返回值即为对话框过程中调用EndDialog()时的第二个参数值。该函数的原型为:DialogBoxDialogBox(HINSTANCE(HINSTANCE hInstancehInstance,/,/当前应用程序的实例句柄当前应用程序的实例句柄 LPCTSTR LPCTSTR lpTemplatelpTemplate,/,/对话框资源的名称对话框资源的名称 HWND HWND hWndParenthWndParent,/,/拥有该对话框的窗口句柄拥有该对话框的窗口句柄 DLGPROC DLGPRO

33、C lpDialogFunc lpDialogFunc /对话框处理函数的地址对话框处理函数的地址 ););在实例程序中,对话框的创建是在用户单击菜单Help|About后出现的,主要的代码在窗口函数对菜单About的WM_COMMAND消息的响应函数中。Visual C+Visual C+LRESULT LRESULT CALLBACKCALLBACK WndProcWndProc(HWND(HWND hWndhWnd,UINT UINT message,message,WPARAMWPARAM wParamwParam,LPARAM,LPARAM lParam lParam)switch(

34、message)switch(message)case WM_COMMAND:case WM_COMMAND:wmId wmId =LOWORD(=LOWORD(wParamwParam););wmEventwmEvent=HIWORD(=HIWORD(wParamwParam););switch(switch(wmIdwmId)case IDM_ABOUT:case IDM_ABOUT:/对菜单对菜单About(About(其资源为其资源为IDM_ABOUT)IDM_ABOUT)的相应的相应 DialogBoxDialogBox(hInsthInst,(LPCTSTR)IDD_ABOUTBO

35、X,(LPCTSTR)IDD_ABOUTBOX,hWndhWnd,(DLGPROC)About);(DLGPROC)About);break;break;case IDM_EXIT:case IDM_EXIT:DestroyWindow DestroyWindow(hWndhWnd););break;break;.6.2.7 6.2.7 对话框的调用与响应对话框的调用与响应(续)(续)Visual C+Visual C+2构造对话框消息处理函数构造对话框消息处理函数 对对话话框框消消息息处处理理函函数数又又叫叫对对话话框框过过程程,它它要要严严格格遵遵循循消消息息处处理理返返回回值值的的约约定

36、定,除除了了WM_INITDIALOG外外,其其它它消消息息在在处处理理时时要要返返回回TRUE,否否则则返返回回FALSE。并且不能调用DefWindowProc()函数进行默认消息的处理。一般情况下,对对话话框框过过程程要要响响应应WM_INITDIALOG消消息息完完成成一一些些初初始始化化作作,通常使用一些全局变量来初始化控件的状态。而在响应“OK”或“Cancel”按钮的BN_CLICKED通知消息时,要调用EndDialog()函数来退出对话框。这个函数的第第一一个个值值是对话框句柄,第第二二个个参参数数为退出代码,这个退出代码就是生成模态对话框的函数DialogBox()的返回值

37、,通常以所响应的WM_COMMAND的控件ID为EndDialog()函数的退出代码,如:EndDialog(hDlg,IDOK)。在比较复杂的程序中,在响应“OK”按钮时,要获取对话框中控件文本或状态来更新那些全局变量,以便应用程序可以了解用户在对话框中的最终选择。6.2.7 6.2.7 对话框的调用与响应对话框的调用与响应(续)(续)Visual C+Visual C+实例程序的对话框消息处理函数为:实例程序的对话框消息处理函数为:LRESULT LRESULT CALLBACK CALLBACK About(HWNDAbout(HWND hDlghDlg,UINT,UINT messag

38、e,WPARAM message,WPARAM wParamwParam,LPARAM,LPARAM lParamlParam)switch(message)switch(message)case WM_INITDIALOG:case WM_INITDIALOG:return TRUE;return TRUE;case WM_COMMAND:case WM_COMMAND:if if(LOWORD(LOWORD(wParamwParam)=IDOK IDOK|LOWORD(LOWORD(wParamwParam)=IDCANCEL)IDCANCEL)EndDialogEndDialog(hDl

39、ghDlg,LOWORD(,LOWORD(wParamwParam);/);/结束对话框过程结束对话框过程return TRUE;return TRUE;if(LOWORD(if(LOWORD(wParamwParam)=IDC_BUTTON1)=IDC_BUTTON1)MessageBox MessageBox(NULL,(NULL,欢迎进入欢迎进入APIAPI开发的世界开发的世界!,!,提示提示,MB_OK);MB_OK);break;break;return FALSE;return FALSE;本程序在单击按钮“欢迎”时,在屏幕上显示消息框“欢迎进入API开发的世界!”。6.2.7 6

40、.2.7 对话框的调用与响应对话框的调用与响应(续)(续)Visual C+Visual C+*6.2.8*6.2.8 VCVC程序程序ResourceViewResourceView的的使用方法使用方法 ResourceView是对应用程序中使用的资源操作窗口。ResourceView显示了当前应用程序中的所有资源。如如在VC中打开的工程名为MultiDoc,WorkSpace窗口中ResourceView选项中显示一个标题“MultiDoc Resource”。单击标题“MultiDoc Resource”前的符号“+”或双击图标,MultiDoc工程中的资源分类显示,如加速键资源Acce

41、lerator、对话框资源Dialog等。每类资源前也有一个图标和符号“+”,双击图标或单击“+”,可打开该类资源中各个单项资源列表(如Dialog中所有的对话框资源,Icon中的所有图标)。双双击击资资源源列列表表中中的的各各单单项项资资源源,可可打打开开相相应应的的资资源源编编辑辑器器,进进行行资资源源编编辑辑。如打开字符串列表中的某个字符串资源时,可打开该字符串资源,编辑该字符串。在ResourceView中的任何标题或图标处单击鼠标右键,均可弹出快捷菜单,用于完成当前状态下的一些常用操作。在ResourceView窗口的最顶层名称或图标处(即Project resource层)单击鼠标

42、右键,可弹出图6.4所示的快捷菜单。菜单中的主要功能在表6.1中。Visual C+Visual C+图图6.4 Resource View中应用程序层的快捷菜单中应用程序层的快捷菜单 Visual C+Visual C+表表.1.1 应用程序层的快捷菜单的内容应用程序层的快捷菜单的内容Visual C+Visual C+习习 题题 一、名词解释一、名词解释 1 1 资源 2 2加速键菜单消息二、简单题二、简单题 1 1常见资源的创建过程是什么?装载资源有哪几个函数,写出其函数原型。2 2为什么在创建对话框时不用注册窗口类?3 3在API编程和MFC编程中资源的建立步骤都是一样的,但在使用的过程上有不同,请写出图标资源、菜单资源和对话框的创建和调用过程。并在学了MFC应用程序中使用资源的步骤后相比较。三、实验题三、实验题 请利用API编程模式,建立一个具有图形用户接口的程序,程序运行后有一个菜单项“设置文本属性”,它下面有两个子菜单“设置颜色为红色”、“设置背景为兰色”。当单击了菜单项后,能把屏幕中央显示的“VC+资源编程”这行文本的颜色或背景色改变。完后上机进行测试。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁