《vb第2版》课件第7章菜单设计与多文档界面_第1页
《vb第2版》课件第7章菜单设计与多文档界面_第2页
《vb第2版》课件第7章菜单设计与多文档界面_第3页
《vb第2版》课件第7章菜单设计与多文档界面_第4页
《vb第2版》课件第7章菜单设计与多文档界面_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第七章菜单设计与多文档界面(MDI)7.1对话框设计7.2菜单设计7.3多重窗体与多文档界面7.4工具栏设计7.5

实例分析7.1对话框设计■添加通用对话框到工具箱

“通用对话框”控件是ActiveX控件,使用时要添加到工具箱。添加方法有如下两种。(1)选择“工程”“部件”命令,弹出“部件”对话框,在“控件”选项卡中选择MicrosoftCommonDialogControl6.0,单击“确定”按钮,即可将“通用对话框”控件添加到控件工具箱中。如图7-1所示。(2)在控件工具箱空白处右键单击,选择“部件“命令,同样弹出“部件”对话框,后续操作同1。7.1对话框设计■添加通用对话框到工具箱

通用对话框可提供六种形式的对话框,在显示出这些对话框之前需要通过调用Show方法来选择。见表7-1。表7-1通用对话框的方法列表方法对话框类型ShowOpen打开文件对话框ShowSave保存文件对话框ShowColor颜色对话框ShowFont字体对话框ShowPrinter打印对话框ShowHelpWindows帮助对话框例如:CommonDialog1.ShowOpen

在应用程序使用“通用对话框”控件时,需要将其添加到窗体中,同时在窗体上画出的图标大小是固定不变的,该图标在程序运行时消失,因此可将它放在窗体的任何位置。7.1对话框设计■添加通用对话框到工具箱

思考:该控件与哪个控件类似?

每种对话框都有自己的特殊属性,这些属性可以在代码中设置,也可以通过“属性页”进行设置。“属性页”可通过以下方法打开:在属性窗口中选择“自定义”,点击后面的“…”按钮,就会弹出“属性页”对话框,如图6-2所示。■打开文件对话框

“打开文件”对话框是“通用对话框”控件最常用的界面之一。在该对话框内可以用来遍历磁盘的整个目录,指定相应文件所在的驱动器、文件夹以及文件名、扩展名等。也可以在初始化时预先设置要查找的路径或文件的扩展名等,如图7-2所示,其属性页各选项含义如下:7.1对话框设计1.对话框标题(DialogTitle):用来指定对话框的标题内容。“打开”对话框的默认值为“打开”。2.文件名称(FileName):用来设置“打开”对话框中“文件名”的初始值。3.初始化路径(InitDir):指定对话框中显示的初始路径。若不设置该项,则显示系统默认路径。4.过滤器(Filter):指定在对话框中显示的文件类型。该值由一对或多对字符串组成,每对字符串之间用“|”隔开,其格式为:对话框名.Filter=描述符1|过滤符1|描述符2|过滤符2……例如:CommonDialog1.Filter=“AllFile(*.*)|*.*|(.jpg)|.jpg|(.vbp)|.vbp”描述符和过滤符必须成对出现,描述符是在“打开文件对话框”中“文件类型”下拉列表中的文字说明;过滤符.jpg表示选择后缀为.jpg的所有文件,*.*表示选择所有文件等。5.过滤器索引(FilterIndex):用来指定默认的过滤器。用Filter设置多个过滤符之后,每个过滤符都有一个值,这些值从1开始。例如:

CommonDialog1.FilterIndex=2结合④中例子,该语句表示打开对话框后,在“文件类型”中显示的是“.jpg”。例如:CommonDialog1.ShowOpen在程序中调用ShowOpen方法显示“打开文件对话框”格式为:控件名.ShowOpen“保存文件”对话框顾名思义是用来保存文件时打开的对话框,它与“打开文件”对话框结构类似,如图7-4所示。对话框标题为“另存为”,该对话框也能遍历磁盘的整个目录,找到所需要保存文件的位置。■保存文件对话框■颜色对话框颜色对话框是“通用对话框”所能显示的第3种对话框,如图6-5所示。在颜色调色板中提供了基本颜色,还提供了用户自定义颜色,用户可以自己调色。7.1对话框设计Text1.ForeColor=CommonDialog1.Color通过颜色对话框设置文本框的文字颜色。■字体对话框“字体”对话框设置并返回所有字体的名字、样式、大小、颜色效果等,打开的“字体”对话框如图7-6所示。7.1对话框设计在使用CommonDialog控件选择字体之前,必须先设置标志(Flag)属性。■打印对话框

在“打印”对话框可以选择打印机,打印机的属性可以通过“打印”对话框的“属性”按钮进行设置。打开的“打印”对话框如图7-7所示。7.1对话框设计例【7-1】使用通用对话框的例子。分析:在窗体上增添一个文本框text1,一个通用对话框控件commondialog1,5个命令按钮command1~command5,其Caption属性分别为“打开”、“保存”、“字体修改”、“颜色修改”和“打印”。设计界面如图7-9所示。■例子

7.1对话框设计对各个按钮编写Click事件过程如下。PrivateSubCommand1_Click()CommonDialog1.Filter="所有文件|*.*|文本文件(*.txt)|*.txt|位图文件(*.bmp)|*.bmp"CommonDialog1.FilterIndex=2CommonDialog1.ShowOpenEndSubPrivateSubCommand2_Click()CommonDialog1.ShowSaveEndSubPrivateSubCommand3_Click()CommonDialog1.ShowFontText1.FontName=CommonDialog1.FontNameText1.FontBold=CommonDialog1.FontBoldText1.FontSize=CommonDialog1.FontSizeEndSub■例子

7.1对话框设计PrivateSubCommand4_Click()CommonDialog1.ShowColorText1.ForeColor=CommonDialog1.ColorEndSubPrivateSubCommand5_Click()CommonDialog1.ShowPrinterFori=1To3Printer.PrintText1.TextNextPrinter.EndDocEndSub7.2菜单设计■下拉式菜单

“菜单编辑器”是VB提供的一种用来建立菜单栏的工具,利用该工具可以方便快捷的建立起菜单。“菜单编辑器”可以通过以下方式打开:选择“工具”菜单下的“菜单编辑器”命令,或者点击工具栏中的“菜单编辑器”按钮,都可以打开如图7-10所示“菜单编辑器”窗口。“菜单编辑器”对话框分为两部分:上半部分是控件属性区,用来设置属性,下半部分为菜单编辑区,用来显示用户设置的菜单和菜单项。属性区的各个属性含义如表7-3所示。名称说明标题(Caption)输入该项内容可建立菜单名或命令名。名称(Name)设置菜单项的名称,相当于控件的Name属性,用于在程序中访问菜单索引(Index)设置菜单控件数组中的下标快捷键(Shortcut)设置与菜单等价的快捷键复选(Checked)选中此内容时,表示该菜单项当前处于活动状态有效(Enabled)设置菜单项是否可用可见(Visible)设置菜单项是否可见表7-3菜单控件的主要属性7.2菜单设计■下拉式菜单

名称功能

每次单击都把选中的菜单项左/右移一个等级,一共可创建4个子菜单等级每次单击都把选中的菜单项在同级菜单中向上/下移动一个位置下一个选定下一个菜单项插入在光标所在处插入一个空白菜单项删除删除光标所在行的菜单项表7-4编辑区各部分功能7.2菜单设计■例子

例【7-2】创建一个简易文本编辑器。设计方法:在窗体上放置一个通用对话框CommonDialog1和一个文本框Text1,然后按图7-11所示设计菜单,设计方法如上述所示。编写文件菜单下“打开”和“保存”两个菜单项的Click事件代码:PrivateSubopen_Click()CommonDialog1.Filter="所有文件|*.*|文本文件(*.txt)|*.txt|位图文件(*.bmp)|*.bmp"CommonDialog1.FilterIndex=2CommonDialog1.ShowOpenEndSubPrivateSubsave_Click()CommonDialog1.ShowSaveEndSub编写视图菜单下的“颜色”菜单项的Click事件代码:PrivateSubcolor_Click()CommonDialog1.ShowColorText1.ForeColor=CommonDialog1.colorEndSub编写视图菜单下的“字体大小”菜单项下的两个子菜单项的Click事件代码:PrivateSubsixteen_Click()Text1.fontsize=16EndSubPrivateSubtwenty_Click()Text1.fontsize=20EndSub编写视图菜单下的“字体风格”菜单项下的两个子菜单项的Click事件代码:PrivateSubkai_Click()Text1.FontName="楷体_GB2312"EndSubPrivateSubli_Click()Text1.FontName="隶书"EndSub菜单是VB中的一个控件,因此也能对菜单应用控件数组的概念。菜单控件数组同其他控件数组一样,也是需要依靠Index值来判断选中的哪个菜单项。如果将例7-2中的同一级菜单改成使用菜单控件数组,可将菜单项设置进行如下修改:将“文件”菜单下的“打开”和“保存”的索引(Index)值分别设置为1和2,将二者的名称(Name)值均改为files;将“字体大小”菜单下的“16”和“20”的索引(Index)值分别设置为1和2,将二者的名称(Name)值都改为size;将“字体风格”菜单下的“隶书”和“楷体”的索引(Index)值分别设置为1和2,将二者的名称(Name)值都改为style,具体设置如表7-6所示。

7.2菜单设计■菜单控件数组所有的菜单控件都具有Enabled属性,当该属性为False时,菜单项变为灰色,点击时不响应任何操作,快捷键的访问也无效。例如,要使例6-2中的“打开”菜单项无效,可以先进行如下设置:Open.Enabled=False在运行时该菜单项就变成灰色,不响应鼠标或键盘的任何操作。如果要使菜单项在运行时隐藏起来,可以利用Visiable属性达到这一目的。例如:Open.visiable=False在运行时,“打开”这一菜单项就不可见。■菜单无效性设计弹出式菜单的设计方法如下:先使用菜单编辑器设计一个一般的菜单,然后用VB提供的PopupMenu方法来显示弹出菜单。该方法的使用形式如下:[窗体名.]PopupMenu菜单名,标志,X,Y其中,菜单名是必须的,后面的其他几个参数是可选的。菜单名是指用右键单击时要显示的菜单的名称(Name),X和Y参数指定弹出菜单显示的位置,标志参数用于进一步定义弹出菜单的位置和性能,其取值含义如表6-7所示。7.2菜单设计■弹出式菜单值说明位置0菜单左上角位于X4菜单上框中央位于X8菜单右上角位于X性能0(默认)右键单击触发弹出菜单2左键、右键均可触发弹出菜单例如,在例【7-2】中,右键单击文本框时弹出“字体风格”菜单,可添加如下代码:PrivateSubText1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=2ThenPopupMenufontstyle,6EndSub运行后界面如图7-12所示。其中Button=2表示按下鼠标右键,参数6是4与2的和。7.2菜单设计■弹出式菜单例[7-3]设计一个可以改变窗体背景颜色的弹出菜单。首先打开菜单编辑器,如图7-13建立一个名为mnucolor的菜单,并取消“可见”选择。7.2菜单设计■弹出式菜单菜单控件数组属性设置。7.2菜单设计■弹出式菜单标题(Caption)菜单名(Name)索引说明设置背景色mucolor菜单项1红色red1菜单项11绿色green2菜单项12蓝色blue3菜单项13编写如下代码:首先检查是否单击了鼠标右键,如果是单击右键则把mnucolor菜单显示为一个弹出式菜单。PrivateSubForm_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) IfButton=2Then PopupMenumnucolor EndIf EndSub7.2菜单设计■弹出式菜单 PrivateSubred_click() Form1.BackColor=&HFF EndSub PrivateSubgreen_click() Form1.BackColor=&HFF00& EndSub PrivateSubblue_click() Form1.BackColor=&HFF0000EndSub7.2菜单设计■弹出式菜单■创建多重窗体界面应用程序界面是用户和应用程序交互的主要操作之一,在VB中,应用程序的界面一般分为单文档SDI(SingleDocumentInterface)界面和多文档MDI(MultipleDocumentInterface)界面。前者又称为多重窗体界面,每个窗体是独立的、平等的;后者所包含的所有窗体都在一个父窗体中,父窗体为所有的子窗体提供工作空间,像MicrosoftExcel就是此种类型,它能够在一个工作簿中打开多个工作表。7.3多重窗体与多文档界面设计

1.添加窗体方法一:单击“工程”菜单下的“添加窗体”命令,即可在当前工程中添加一个窗体。方法二:在“工程资源管理器”窗口单击右键,选择“添加”命令中的“添加窗体”,也可在当前工程中添加一个窗体。新添加的窗体可以通过“工程资源管理器”窗口查看,例如在一个新的空白窗体添加一个窗体,新添加的窗体被命名为Form2,如图7-15所示在“工程资源管理器”窗口查看。如果添加了多个窗体,系统默认的命名是Form3、Form4等等。■创建多重窗体界面7.3多重窗体与多文档界面设计

2.删除窗体方法一:选中要删除的窗体,点击“工程”菜单下的“移除<窗体名>”即可。方法二:在“工程资源管理器”窗口中,选中要删除的窗体名,右键单击选择“移除<窗体名>”命令。3.多个窗体间的切换在一个应用程序中,如果有多个窗体,可通过“工程资源管理器”窗口进行切换,双击要打开的窗体名即可将该窗体设置为当前活动窗体。■创建多重窗体界面7.3多重窗体与多文档界面设计

4.多重窗体的加载加载窗体是指将窗体文件装入内存,卸载窗体指将窗体从内存中删除。加载窗体命令如下:Load<窗体名>执行该命令后,可以引用窗体中的各对象,但此时窗体并没有显示出来。卸载窗体命令:Unload<窗体名>调用Load语句加载窗体后,窗体并没有被显示出来,若要显示出窗体,可通过如下语句:[窗体名.]Show如果省略“窗体名”,则显示当前窗体。Show方法同时具有加载和显示两种功能,如果窗体没有被加载而要显示,则先将窗体加载,再显示出来。如果要将窗体暂时关闭而不从内存中卸载,可以调用Hide方法实现:[窗体名.]Hide

■创建多重窗体界面7.3多重窗体与多文档界面设计

5.多重窗体的启动应用程序中如果包含多个窗体,VB需要指定一个窗体为首先要启动的窗体。若要设置一个窗体为启动窗体,可通过如下方法设置:选择“工程”菜单中的“工程名属性”命令,打开如图7-16所示对话框(这里打开的是“工程1属性”),在“通用”选项卡中找到“启动对象”,在下拉列表框中选择要作为启动窗体的窗体名,然后单击“确定”即可。■创建多重窗体界面7.3多重窗体与多文档界面设计

应用程序在运行时如果想要先执行一段代码,然后根据代码的执行情况来确定先加载哪个窗体,这种情况下就需要使用SubMain过程作为首先的启动对象。SubMain过程可在图7-16的“启动对象”中设置,然后在标准模块中建立。SubMain过程的建立方法如下:1.点击“工程”菜单下的“添加模块”命令,在打开的对话框中选择“模块”为当前的工程添加一个模块,模块默认名字为Module1。2.在“工程资源管理器”中双击Module1,打开相应的代码窗口。3.在代码窗口输入SubMain,按Enter键后系统将自动添加上过程的开始和结尾。4.在其中编写过程代码,并保存模块文件Module1.bas。由于系统并不能直接识别出SubMain过程而将其首先执行,所以在SubMain过程编写完毕后,需要打开“工程”菜单下的“工程属性”对话框把SubMain过程设置为启动对象,这样程序在运行时会首先执行SubMain过程,根据过程中的代码执行情况显示或加载相关的窗体。■创建多重窗体界面7.3多重窗体与多文档界面设计

多文档界面可以在一个窗体中打开多个子窗体,父窗体为每个子窗体提供工作空间,子窗体被放置在父窗体中,最小化时其图标显示在父窗体中而不是任务栏中。在创建多文档界面时,首先要创建一个父窗体即创建一个MDI窗体,然后再创建子窗体,子窗体实际就是将一个普通的窗体的MDIChild属性设置为真的。创建MDI窗体的步骤如下:选择“工程”菜单下的“添加MDI窗体”命令,里面只有一个默认选项,单击“打开”命令,出现如图7-17所示窗体。此时在“工程资源管理器”中同时显示出MDI窗体。■创建多文档(MDI)界面

7.3多重窗体与多文档界面设计

创建MDI子窗体的步骤如下:1.打开一个已有的普通窗体,或者添加一个新的窗体。2.将这个普通窗体的MDIChild属性设置为真。一个工程中只能有一个MDI窗体,一个MDI窗体中可以有多个子窗体,这些子窗体的显示或隐藏需要调用7.1.3节的各种方法来操作。子窗体最小化时的图标不是放置在任务栏中,而是放置在父窗体中,子窗体可以在父窗体中任意移动、最小化或最大化,但不能超出父窗体的范围。父窗体和子窗体都可以有各自的菜单。

■创建多文档(MDI)界面

7.3多重窗体与多文档界面设计

例【7-4】为当前工程添加1个MDI窗体MDIForm1和3个普通窗体Form2、Form3和Form4,并把这3个普通窗体的MDIChild属性设置为True。再添加一个普通窗体Form1,Form1中有一个命令按钮Command1,设置其Caption属性为“显示MDI多文档界面”,要求单击该按钮后显示多文档界面,显示的多文档界面如图7-18所示。■创建多文档(MDI)界面

7.3多重窗体与多文档界面设计

为Command1编写事件过程:PrivateSubCommand1_Click()MDIForm1.ShowForm2.ShowForm3.ShowForm4.ShowEndSub此时如果单击每个MDI子窗体右上角的“最小化”按钮,那么该窗体最小化后的图标就会出现在其父窗体的下面而不是任务栏中。■创建多文档(MDI)界面

7.3多重窗体与多文档界面设计

7.4工具栏设计ToolBar控件是一种ActiveX控件,使用前需要将其添加到工具箱中,添加方法如下:在工具箱空白处单击右键,选择“部件”命令,打开“部件”对话框中的“控件”选项卡,选择MicrosoftWindowsCommonControls5.0,单击“确

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论