面向对象程序设计PPT10_第1页
面向对象程序设计PPT10_第2页
面向对象程序设计PPT10_第3页
面向对象程序设计PPT10_第4页
面向对象程序设计PPT10_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

1、第10章 对话框和菜单10.1 通用对话框控件10.2 菜单设计1“通用对话框”是一种ActiveX控件,它随同VB提供给程序设计人员。启动VB后,在工具箱中没有对话框控件,需要把它加到工具箱中。控件添加步骤: (1)打开“工程”菜单,选择“部件”命令。(2)打开“控件”选项卡,并选中“Microsoft Common Dialog Control 6.0”复选框。 (3)单击“确定”按钮,控件出现在工具箱中 。10.1 通用对话框控件 CommonDialog2ActiveX控件:根据微软权威的软件开发指南MSDN(Microsoft Developer Network)的定义,Active

2、X插件以前也叫做OLE(对象连接与嵌入)控件OCX控件,它是一些软件组件或对象,可以将其插入到WEB网页或其它应用程序中。 ActiveX控件是可重用的软件组件。使用它可以很快地在网址、应用程序以及开发工具中加入特殊的功能。ActiveX控件的使用者可以无需知道这些组件是如何开发的,便可以完成网页或应用程序的设计。3对话框类型 Action属性值 方法 打开文件对话框 1ShowOpen 保存文件对话框 2ShowSave颜色对话框 3ShowColor字体对话框 4ShowFont打印对话框 5ShowPrinter帮助对话框 6ShowHelp通用对话框控件提供了六种类型的对话框 ,对话框

3、的类型需要在程序中设置,具体方法有两种:(1)设置属性:CommonDialog1.Action = n(2)执行方法:CommonDialog1.ShowOpen通用对话框的类型设置4CommonDialog控件与“打开/另存为”对话框有关的属性 :一、打开/另存为对话框(1) DialogTitle 属性设置对话框的标题,缺省时为“打开”或“保存” 。5(2) 属性设置或返回要打开或保存的文件的路径及文件名。例如:H:exe(2) 属性用来返回所选择的文件名(不含路径)。例如:db.exe只能在程序中使用该属性。6(4) Filter属性指定在对话框中显示的文件类型。可以设置多个文件类型,

4、供用户在对话框的“文件类型”的下拉列表中选择。格式如下:对话框名.Filter=描述符1|过滤器1|描述符2|过滤器2例如:CommonDialog1.Filter= “All Files(*.*) | *.*| EXE文件(*.EXE) |*.EXE|BAT文件(*.BAT)|(*.BAT)通配符和扩展名7(5) FilterIndex属性指定默认的过滤器,其设置值为一个整数。Filter属性设置多个过滤器后,每个都有一个索引值。第一个过滤器的索引值为1,第二个过滤器的索引值为2例如:CommonDialog1.Filter= “All Files(*.*) | *.*| EXE文件(*.E

5、XE) |*.EXE|BAT文件(*.BAT)|(*.BAT)CommonDialog1.FilterIndex=28(6) CancelError属性当CancelError为True时,用户单击“取消”按钮,将产生一个错误,错误号为32755(cdlCancel)以便程序判断。当CancelError为False时,单击“取消”按钮,将不产生错误信息。9补充: Shell函数调用应用程序格式:shell(命令字符串,窗口类型)(1) 命令字符串:必须是可执行文件,即扩展名必须为COM、 EXE、BAT、PIF,其他不可 。 注:目录及文件名不能包含汉字。(2) 窗口类型:0、1、2、3、4

6、、6 vbHide/0: 窗口被隐藏,具有焦点 vbNormalFocus/1:窗口正常大小,具有焦点 vbMinimizeFocus/2:窗口最小化,具有焦点 vbMaximizeFocus/3:窗口最大化,具有焦点 vbNormalNoFocus/4:窗口正常,不具有焦点 vbMinimizeNoFocus/6:窗口最小化,不具有焦点10Shell函数成功执行后,返回一个任务标识(task id)且必须赋给一个变量 x=shell(”c:vb98myvb1.exe”,3)不可以省略“x=”Shell函数采用异步方式执行其他程序,即shell启动的 程序可能还没有执行完,就已执行了Shell

7、函数后面的语句例如:Private Sub command1_click() m% = InputBox(shuru 13) Select Case m Case 1: x = Shell(H:exe, 1) Case 2: x = Shell(H:exe, 1) Case 3: x = Shell(H:exe, 1) End SelectEnd Sub11例10.1 显示“打开”对话框并运行选定的可执行文件。p257 (1)界面设计(2)程序代码12Private Sub Command1_Click() Dim RetVal CommonDialog1.CancelError = True

8、 On Error GoTo Er 错误捕捉,参见第13章p326 以下设置过滤器 CommonDialog1.Filter = All Files(*.*) |*.*|EXE文件(*.EXE) |*.EXE|BAT文件(*.BAT)|*.BAT CommonDialog1.FilterIndex = 2 指定缺省过滤器 CommonDialog1.ShowOpen 显示打开对话框 以下调用Shell函数打开指定的文件 RetVal = Shell(CommonDialog1., vbNormalFocus)Er: Exit SubEnd Sub13“颜色对话框”可以用来在调色板中选择颜色,或

9、者创建并选定自定义颜色。CommonDialog1.Action = 3 或CommonDialog1. ShowColor10.1.2 颜色对话框1410.1.2 颜色对话框“颜色对话框”控件的重要属性: DialogTitle, CancelError,Color,Flags。Color: 用来设置初始颜色。Flags: 用来设置对话框的选项,其中,属性值为cdlCCRGBInit或1时,使得Color属性定义的颜色在首次显示对话框时作为选定颜色。例如:Private Sub Form_Load() CommonDialog1.ShowColor CommonDialog1.Color =

10、 &H000000FF& 红色 CommonDialog1.Flags = 1End Sub15例10.2 显示“颜色”对话框,并把用户选择的颜色设置成窗体的背景色。Private Sub Command1_Click() CommonDialog1.CancelError = True On Error GoTo ErrHandler CommonDialog1.Color = &HFF0000 兰色 CommonDialog1.Flags = 1 设置Flags属性 CommonDialog1.ShowColor Color属性值作为窗体背景颜色 Form1.BackColor = Com

11、monDialog1.ColorErrHandler: Exit SubEnd Sub1610.1.3 字体对话框“字体”对话框用来设定字体大小、样式、颜色。CommonDialog1.Action = 4 或CommonDialog1. ShowFont17通用对话框的属性设置: (1)Color属性:设定字体颜色的初始值。为了使用此属性,必须先将Flags属性设置为cdlCFEffects/256(允许中划线、下划线和颜色)。(2) FontName属性:字体的名称 (3) FontBold属性:粗体(4) FontItalic属性:斜体(5) FontStrickethru属性:删除线(

12、6) FontUnderline属性:下划线(7) FontSize属性:字体大小18为了显示“字体”对话框,Flags属性设置为下述VB常数之一:cdlCFScreenFonts(屏幕支持的字体) cdlCFPrinterFonts(打印机支持的字体) cdlCFBoth(即可以是屏幕字体又可以是打印机字体)例10.3 初始化并显示“字体”对话框,然后根据用户的选择设置文本框的字体属性 。 19Private Sub Command1_Click( ) CommonDialog1.CancelError = True On Error GoTo ErrHandler 设置Flags属性 Co

13、mmonDialog1.Flags = cdlCFBoth Or cdlCFEffects 设置“字体”对话框的初始值 CommonDialog1.FontName = 隶书 CommonDialog1.FontSize = 50 CommonDialog1.FontBold = True CommonDialog1.FontItalic = True CommonDialog1.FontUnderline = True CommonDialog1.FontStrikethru = True CommonDialog1.Color = RGB(255, 0, 0) 20显示字体对话框 Comm

14、onDialog1.ShowFont 根据用户的选择设置文本的属性 Text1.FontName = CommonDialog1.FontName Text1.FontSize = CommonDialog1.FontSize Text1.FontBold = CommonDialog1.FontBold Text1.FontItalic = CommonDialog1.FontItalic Text1.FontUnderline = CommonDialog1.FontUnderline Text1.FontStrikethru = CommonDialog1.FontStrikethru

15、Text1.ForeColor = CommonDialog1.ColorErrHandler: Exit SubEnd Sub21 10.1.4 打印对话框通用对话框的属性设置/返回:(1) Copies属性:返回/设置要打印的份数。(2) FromPage属性:返回/设置打印的起始页。(3) ToPage属性:返回/设置打印的终止页。(4) Orientation属性:返回/设置打印的方向 。22Private Sub Command1_Click( ) Dim BeginPage, EndPage, NumCopies, k CommonDialog1.CancelError = Tru

16、e On Error GoTo out CommonDialog1.ShowPrinter 从对话框中获取用户选定的信息: BeginPage = CommonDialog1.FromPage EndPage = CommonDialog1.ToPage NumCopies = CommonDialog1.Copies For k = 1 To NumCopies 在此放置打印代码 Next k out: Exit SubEnd Sub23需要设置的属性:(1) HelpCommand属性:设置帮助显示的类型,一般为VB常数(2) HelpFile属性:指定帮助文件 10.1.5 帮助对话框2

17、410.2 菜单设计 对于VB应用程序,当操作比较简单时,一般通过控件来执行相应的功能;而当要完成较复杂的操作时,使用菜单具有十分明显的优势。10.2.1 菜单概述1. 菜单基本类型:下拉菜单和弹出式菜单。2. 下拉菜单有关术语:主菜单(通常为一行),菜单标题;下拉菜单列表框,菜单项,快捷键25启动菜单编辑器常用的方法:选择“工具”菜单中的“菜单编辑器”选项。单击按钮栏中的“菜单编辑器”按钮。在要建立菜单的窗体上单击鼠标右键,将弹出一个菜单,选择“菜单编辑器” 。10.2.2 菜单编辑器菜单编辑器是对菜单控件的属性进行设置的专用对话框。 26菜单编辑器窗口分为三个部分1菜单项属性区(数据区)

18、标题(Caption):输入所建立菜单的标题。名称(Name):是一文本框,输入所建菜单的名称,该名称不在菜单中显示的,而是在代码中引用。索引(Index):用来创建菜单控件数组,即所有的菜单名称都相同,用不同的Index属性来区分。快捷键:是一列表框,用来为菜单项设置快捷键。27帮助上下文ID:是一文本框,取值为数值。用来调用为菜单项准备的帮助文件的标题页。用户按下F1键,则该数值用来定位和显示帮助文件。协调位置:是一个列表框,用来确定菜单显示窗体中的位置。复选(Checked):当选择该项时,可以在菜单项旁加上指定的记号(如) ;该项类似一个开关项 。28有效(Enabled):默认情况下

19、,该属性被设置为True,表明菜单项可用。如果取消选择,即设置为False,相应的菜单项会“灰化”,不响应用户操作。可见(Visible):决定菜单项是否可见 显示窗口列表:在多文档应用程序中,当该选项设置为“On”(框内有“”),将显示当前打开的一系列子窗口列表 。292菜单列表框区(编辑区) 用来对输入的菜单项进行调整。左、右箭头:用来确定菜单项的层次。 上、下箭头: 用来移动菜单项在菜单中的位置。 下一个:将菜单列表区中的光标移到下一个菜单项。插入:用来插入新的菜单项。 删除:删除条形光标所在的菜单项。 3.菜单项列表区输入的菜单项全在这里显示。3010.2.3 用菜单编辑器建立下拉菜单

20、例1 p265:设计一个设置字体属性的下拉菜单,通过该菜单可以改变窗体上标签控件的显示样式。311.界面设计(1)新建窗体、标签。(2)利用菜单编辑器建立菜单。菜单项标题为“-”(减号)时,表示显示雕刻线。每一个“菜单项”是一个独立的控件,有对应的事件。323. 编写代码 p265.vbp2.设置标签的属性Name: lblShowCaption: “字体控制示例”33Private Sub mnuFontBold_Click() 粗体 LblShow.FontBold = Not LblShow.FontBold mnuFontBold.Checked = LblShow.FontBoldE

21、nd SubPrivate Sub mnuFontItalic_Click() 斜体 LblShow.FontItalic = Not LblShow.FontItalic mnuFontItalic.Checked = LblShow.FontItalic 逻辑值End Sub34Private Sub mnuFontUnderline_Click( ) 下划线 LblShow.FontUnderline = Not lShow.FontUnderline mnuFontUnderline.Checked =LblShow.FontUnderlineEnd Sub35弹出式菜单是独立于菜单栏

22、而显示在窗体上的浮动菜单。步骤:(1) 用菜单编辑器建立菜单。(2) 用PopupMenu方法弹出显示: (必须把主菜单项的“可见”属性设为False)10.2.4 建立弹出式菜单36PopupMenu格式:对象.PopupMenu 菜单名, Flags ,x , y , BoldCommand 对象:窗体名,缺省为当前活动窗口。菜单名:在菜单编辑器中定义的主菜单项名。X、Y:式菜单在窗体上的显示位置(与Flags配合使用)。BoldCommand:指定在弹出式菜单中用粗体显示的菜单项, 只能有一个菜单项名被加粗。Flags:弹出式菜单的位置和性能。37例2:设计一个设置字体属性的弹出式菜单,

23、通过该菜单可以改变窗体上标签控件的显示样式。P268_1.vbp1.界面设计(1)新建窗体、标签。(与例1同)(2)利用菜单编辑器建立菜单。与例1类似,注意主菜单项的“可见”属性设为False。Private Sub Form_MouseUp (Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then 检查是否单击了鼠标右键 PopupMenu mnuFont 把字体菜单显示为一个弹出式菜单 End IfEnd Sub38Private Sub Form_MouseUp(Button As

24、 Integer, Shift As Integer, X As Single, Y As Single) Dim xloc, yloc 设置X变量和Y变量到窗体中心 xloc = ScaleWidth / 2 yloc = ScaleHeight / 2 显示弹出式菜单 PopupMenu mnuFont, vbPopupMenuCenterAlign Or vbPopupMenuRightButton, xloc, yloc例3:在例2的基础上,设计一个上边框在窗体的中心的弹出式菜单。P268_2.vbp39对话框类型 Action属性值 方法 打开文件对话框 1ShowOpen 保存文件对话框 2ShowSave颜色对话框 3ShowCol

温馨提示

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

评论

0/150

提交评论