资源预览内容
第1页 / 共108页
第2页 / 共108页
第3页 / 共108页
第4页 / 共108页
第5页 / 共108页
第6页 / 共108页
第7页 / 共108页
第8页 / 共108页
第9页 / 共108页
第10页 / 共108页
亲,该文档总共108页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第8章 用户界面设计 8.1 对话框设计8.2 菜单设计8.3 多文档界面应用程序对话框是一种特殊的“窗体”,只有一个“关闭”按钮,不能最大化和最小化,大小一般不能改变。一些应用程序中常常需要进行打开和保存文件、选择颜色和字体、打印等操作,这就需要应用程序提供相应的对话框以方便使用。这些对话框作为Windows资源,在VB中已被做成“公共对话框”(Common Dialog)控件。8.1 对话框设计8.1.1 通用对话框通用对话框是一种ActiveX控件 ,位于 “Microsoft Common Dialog Control 6.0”部件中。8.1 对话框设计工程部件 Common Dialog Control 6.0设计时,通用对话框在窗体上显示成一个图标,可以在“属性页”里中进行属性设置,将其设置为不同类型,可以通过代码,使用Action属性或Show方法,将通用对话框设置成不同的具体对话框。8.1 对话框设计8.1 对话框设计通过在代码中设置不同的Action值可以产生不同的对话框。如果没有设置该属性(默认值为0),运行时通用对话框不会产生任何信息,直到设置了该属性后才会出现相应的对话框。8.1 对话框设计Action属性返回或设置被显示的对话框的类型 :CommonDialogName.Action Value其中CommonDialogName为通用对话框控件的名字,Value值可以取16的整数, 其含义如表示。 8.1 对话框设计注意:使用该控件所产生的对话框仅提供了人-机信息交互的界面,并不能实现真正的操作(如打开、另存、打印等),要想实现这些具体的操作必须进行相应的编程。ShowX方法设置被显示的对话框的类型,其语法格式为:其中CommonDialogName为通用对话框控件的名字。ShowX方法参考表8-1。 CommonDialogName.ShowX8.1 对话框设计DialogTitle属性:产生的对话框的标题文字,如不进行设置则会使用默认的标题。CancelError属性:在每个所产生的对话框上都有“取消”按钮,该属性决定程序运行时,用户单击了“取消”按钮后是否会产生出错信息。8.1 对话框设计该属性取True时,单击“取消”按钮会产生一个错误信息,同时自动将Err对象的Number属性值设置为32755。程序中可以通过代码来访问这个属性以判断是否按下了“取消”按钮,以决定程序的走向。如果该属性值置为False(默认),则当单击“取消”按钮时,不会产生任何出错信息。“打开”对话框充分利用了操作系统的功能,它可以遍历整个的磁盘目录结构,找到所需要的文件,并以“列表”或“详细资料”的方式显示出来。文件对话框具有两种模式,即Open和Save (Save As),其中Open模式可以使用户指定打开的文件,Save模式可以使用户指定保存的文件。1. 文件对话框 Action属性:对话框类型(取值1或2)DefaultExt属性:对话框默认的文件扩展名DialogTitle属性:对话框标题栏的字符串1. 文件对话框 FileName属性:文件名称该属性值为字符串类型,用于设置或得到用户所选定的文件名。即当程序执行时,用户选定的某个文件名将显示在“文件名”文本框中,同时此文件名及相关路径将以字符串的形式赋值给FileName属性。1. 文件对话框 InitDir属性:初始路径该属性用来指定“打开”对话框中的初始目录。默认设置显示当前目录。初始路径在设计时或代码编写中均可进行设置。例:Cd1.InitDir=”E:教材” 将对话框的初始路径设为E盘“教材”文件夹1. 文件对话框 Filter属性:文件类型通过Filter属性在“打开”对话框中设置文件的类型。该属性的值是一个字符串,由一组或多组文件类型表达式构成,每组代表一类文件。构成规则是:类型说明字符串|类型通配表达式|类型说明字符串|类型通配表达式1. 文件对话框 类型说明字符串为对文件类型的说明,类型通配表达式表示需显示的文件类型,各组之间用“|”符号分开。1. 文件对话框 Object.FilterDescription1|Filter1|Description2|Filter2 FilterIndes属性:过滤器索引该属性用于表示用户在“文件类型”列表框中选定的文件类型的序号。例如与图所示相对应,Word文档的该属性值为1,文本文件的该属性值为2。1. 文件对话框 设置适当属性,使对话框的标题为“打开文件”,初始目录为c盘根目录;设置适当属性,使对话框的“文件类型”下拉式组合框中有二行:“Word文档”、“所有文件”,默认的是“所有文件”;编写命令按钮的事件过程,使得单击按钮可以弹出“打开文件”对话框;例:在窗体上画一个名称为command1的命令按钮,标题为” 打开文件“,再画一个名称为CD1的通用对话框。程序运行后 ,若单击命令按钮,则弹出打开文件对话框,并按下列要求 设置属性和代码:思路:首先,条件、是在对话框属性窗口上配置参数,可在对话框属性窗口内填写“对话框标题”、“初始化路径”的相应内容; 其次,过滤器的内容为:Word文档|*.doc|所有文件|*.*;且根据题意,过滤器索引值设为2;另,条件是指编写代码,调用通用对话框,可采用如下程序代码:cd1.action=1 或者 cd1.showopen 均可书本P232 【例8.1】u建立一个命令按钮,用于打开一个Windows应用程序,如“计算器”、“日历”等。“另存为”对话框为用户在存储文件时提供了一个标准界面,供用户选择或键入所要存入文件的路径及文件名。“另存为”对话框所涉及的属性与“打开”对话框基本相同,只是多了一个DefaultExt属性,该属性用来表示所存文件的默认扩展名。2.另存为对话框 2. 颜色对话框 “颜色”对话框中的调色板除了提供基本颜色外,还提供了自定义颜色,供用户调色。对用户来说,使用该对话框,可以获得非常直观的效果。uColor属性:用来返回选定的RGB颜色值。 2. 颜色对话框 例如,用颜色对话框改变窗体的背景色Private Sub Command2_Click()Commondialog1.CancelError=falseCommonDialog1.ShowColorForm1.BackColor = CommonDialog1.ColorEnd Sub“字体”对话框用来设置并返回所用字体的名字、字形、大小、效果及颜色。使用字体对话框时,必须首先设置对话框的Flags属性,然后才能使用ShowFont方法实际显示对话框。3. 字体对话框 Flags属性值可以设置为如下3种情况:cdlCFScreenFonts:屏幕字体。cdlCFPrinterFonts:打印机字体。cdlCFBoth:可以是屏幕字体,也可以是打印机字体。 3. 字体对话框 书本P235 【例8.4】例:Copys:设置或返回打印份数FromPage:打印起始页ToPage:打印终止页PrinterDefault :确定在打印对话框中的选择是否用于改变系统默认的打印机设置。4. 打印对话框8.2.1 菜单设计概述菜单提供了一种结构化的方式向使用应用程序的用户提示可用的命令。菜单是Windows应用程序中十分关键的要素之一,以分组的形式组织多个命令或操作。8.2 菜单设计8.2.1 菜单设计概述下拉式菜单弹出式菜单8.2 菜单设计8.2.2 下拉式菜单设计u下拉式菜单是用户在任何时候都可以在顶端菜单条上选择后拉出的菜单。8.1 菜单设计8.2.2 下拉式菜单设计在Visual Basic中,把每个菜单项看成是一个控件。菜单控件只包含一个事件,即Click事件。8.2.2 下拉式菜单设计主菜单名快捷键 热键子菜单标记主菜单条分隔线菜单项子菜单名8.2 菜单设计8.2.2 下拉式菜单设计下拉式菜单的设计通过菜单编辑器来完成。打开菜单编辑器的方法: “工具”菜单菜单编辑器 组合键“Ctrl+E” 工具栏上的“菜单编辑器”按钮 鼠标右键菜单编辑器8.2.2 下拉式菜单设计打开“菜单编辑器”:“Tools”菜单 在“工具栏”上选择“菜单编辑器按钮”8.2.2 下拉式菜单设计“菜单编辑器”的使用:菜单列表框菜单项属性操作按钮8.2.2 下拉式菜单设计关于下拉式菜单的说明1Caption:菜单项标题。2Name:菜单项名称。当通过代码处理菜单项时需 要使用Name属性。3热键: 在菜单的Caption属性中在某个字母前加上 “n菜单名是通过菜单编辑器设计的菜单的名称nFlags参数为一些常量数值的设置,包含位置常数和行 为常数,表示弹出的位置和触发的键位置。8.2.3 弹出式菜单设计内部常数位置常数说明vbPopupMenuLeftAli gn0(默认)弹出菜单的左上角位于XvbPopupMenuCenter Align4弹出菜单上框中央位于XvbPopupMenuRightA lign8弹出菜单的右上角位于X8.2.3 弹出式菜单设计内部常数行为常数说明vbPopupMenuLeftBut ton0(默认)菜单只接受右键单击vbPopupMenuRightB utton2菜单接受左、右键单击两个常数可以相加或者以or相连8.2.3 弹出式菜单设计50例 为窗体设计一个弹出式菜单,用于设置窗体 背景颜色。 51例 在窗体上添加一个文本框,通过下拉菜单实 现复制、粘贴功能点击“右键”显示菜单项的时候,应先判断文本框中是否有文本被选中,确定哪些菜单项可用。If Text1.SelLength 0 ThenmnuEditCut.Enabled = TruemnuEditCopy.Enabled = TrueElsemnuEditCut.Enabled = FalsemnuEditCopy.Enabled = False(1)剪贴板对象Clipboard 剪贴板是内存的一部分区域,所有应用程序都能使用剪贴板中的信息。在VB中,所有与剪贴板有关的操作是通过剪贴板对象实现的。剪贴板对象是用于暂时保存图形和文本的一种特殊的控件,它是VB中预先定义好的控件组。剪贴板对象没有任何属性和事件,但通过它的一些方法可以提供对系统剪贴板的访问(即发送和接收数据)。剪贴板对象的方法 Clipboard.Clear 将剪贴板清空 Clipboard.SetText Text1.SelText将选中的字符串复制到剪贴板 Clipboard.SetData Data,Format将非文本数据复制到剪贴板上 Clipboard.GetText 将剪贴板上的字符串发送到光标所在位置 Clipboard.GetData 将剪贴板上的非文本数据发送到光标所在位置Private Sub mnuEditCut_Click()If Text1.SelLength 0 ThenClipboard.SetText Text1.SelTextText1.SelText = “ 同时要让粘贴菜单项有效mnuEditPaste.Enabled = TrueEnd IfEnd Sub Text1.SelText表示文本框中选定的文本 Text1.SelLength表示文本框中选定文本的长度Private Sub mnuEditCopy_Click()If Text1.SelLength 0 ThenClipboard.SetText Text1.SelTextmnuEditPaste.Enabled = TrueEnd IfEnd Sub复制与剪切的区别是Text1.SelText = “同时要让粘贴菜单项有效Private Sub mnuEditPaste_Click()If Len(Clipboard.GetText) 0 ThenText1.SelText = Clipboard.GetTex
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号