您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > 53第10章 对话框与菜单程序设计
第十章对话框与菜单程序设计“对话框”可以被看作一种特殊的窗体,它的大小一般不可改变,也没有“最小化”和“最大化”按钮,它只有一个“关闭”按钮(有时还包含一个“帮助”按钮)。VB提供了三种解决方案:系统预定义的对话框(InputBox和MsgBox)用户自定义对话框通用对话框控件。概述:10.1自定义对话框10.1.1由普通窗体创建自定义对话框对话框窗体与一般窗体在外观上是有区别的,需要通过设置以下属性值来自定义窗体外观。窗体的BorderStyle属性值设置为3(VbFixedDoubleialog)1.BorderStyle属性2.ControlBox属性属性值为True时窗体显示控制菜单框,为False时不显示。10.1.2使用对话框模板窗体创建对话框VisualBasic6.0系统提供了多种不同类的“对话框”模板窗体,通过“工程”菜单中的“添加窗体”命令,即可打开“添加窗体”对话框。用户可以选择的对话框有“关于”对话框、对话框、登录对话框、日积月累、ODBC登录、选项对话框6类等,1.显示自定义对话框可使用窗体对象的Show方法显示自定义对话框(1)模式对话框模式对话框在焦点可以切换到其它窗体或对话框之前要求用户必须作出响应以关闭对话框,如单击“确定”按钮、“取消”按钮或者直接单击“关闭”按钮。其显示方法为:〈窗体名〉.ShowvbModal(其中vbModal是系统常数,值为1)(2)无模式对话框无模式对话框的焦点可以自由切换到其它窗体或对话框,而无需用户关闭当前对话框,其显示方法为:〈窗体名〉.Show。2.关闭自定义对话框可使用Hide方法或UnLoad语句来关闭自定义对话框,其格式为:Me.Hide或窗体名.HideUnLoad窗体名。例10.1设计一个如图10-1所示的更改密码对话框,要求只有通过单击“确定”、“取消”或“关闭”按钮才能切换到其它窗体或对话框。10.2通用对话框工程/部件选定部件标签选定MicrosoftCommDialogControl6.0通用对话框添加到工具箱通用对话框的类型Action方法打开(Open)1ShowOpen另存为(SaveAs)2ShowSave颜色(Color)3ShowColor字体(Font)4ShowFont打印机(Printer)5ShowPrinter帮助(Help)6ShowHelp确定一、通用对话框的基本属性和方法通用对话框可以提供6种形式的对话框,通过设置Action属性值或调用Show方法来建立不同类型的对话框。如下表:1属性Action属性:数值型,决定打开何种类型的对话框(见上表)DialogTiltle属性:对通用话框标题。CancelError属性:逻辑型值,表示用户在与对话框进行信息交换时,按下“取消”按钮时是否产生出错信息。True:选择“取消”按钮,出现错误警告;Err置为32755(cdlCancel)。False(缺省):选择“取消”按钮,没有错误警告。2通用对话框的方法除了Acton属性,VB还提供了一组方法用来打开不同类型对话框ShowOpenShowSaveShowColorShowFontShowPrinterShowHelp属性1FileName(文件名称)属性:在程序中可用该属性值设置或返回用户所选定的文件名(包含路径)2FileTitle(文件标题)属性:在程序中可用该属性值设置或返回用户所选定的文件名(不包含路径)10.2.1“打开”/“另存为”对话框DialogTiltleFileNameInitDirFilterFilterIndexDefaultExt3Filter(过滤器)属性:确定文件列表框中所显示文件的类型,该属性的值显示在“文件类型”列表框中。如设置其值为:Cocuments(*.DOC)|*.DOC|TextFiles(*.TXT)|*.txt|AllFiles|(*.*)则在“文件类型”列表框显示下列三种文件类型以供用户选择Cocuments(*.DOC)扩展名为DOC的Word文件TextFiles(*.TXT)扩展名为TXT的文本文件AllFiles|(*.*)所有文件4FilterIndex(过滤器索引)属性:为整型值,表示用户在文件类型列表框选定了第几组文件类型。5InitDir(初始化路径)属性:该属性用来指定打开对话框中的初始目录,若不设置,系统则默认为“C:\MyDocuments\”。6.DefaultExt属性:字符型,用于确定保存文件的缺省扩展名。7.CancelError属性:逻辑型值,表示用户在与对话框进行信息交换时,按下“取消”按钮时是否产生出错信息。设计一个窗体,包含1个文本框(Text1)和6个分别为“打开”(cmdOpen)、“另存为”(cmdSave)、“颜色”(cmdColor)、“字体”(cmdFont)、“打印”(cmdPrinter)和“帮助”(cmdHelp)命令按钮。本例中仅涉及前两种对话框的使用,当用户要求单击“打开”就弹出打开对话框,当用户选择一文本文件,便可将该文件内容读入到文本框;当单击“另存为”就打开另存为对话框。用户输入文件名后,便可以新的文件名保存文本框的内容。例10.210.2.2“颜色”对话框颜色对话框是当Action值为3时的通用对话框,如右图。重要属性Color:用来返回或设置选定的颜色。例10.3例10.2中“颜色...”按钮的事件过程PrivateSubcmdColor_Click()CommonDialog1.Action=3‘打开颜对话框Text1.ForeColor=CommonDialog1.ColorEndSub10.2.3“字体”对话框字体对话框是Action为4时的通用对话框,如下图所示,提供用户选择字体、字号及字体样式等。属性:字体对话框重要的属性有:Color,FontName,FontSize,FontBoldFontItalic,FontStrikethru,FontUnderline,Max,mint等,见下图。FontNameFontBold、FontItalicFontSizeFontStrikethruFontUnderlineColorMin、Max例10.4例10.2中“字体...”按钮的事件过程PrivateSubcmdFont_Click()CommonDialog1.Flags=cdlCFBothOrcdlCFEffectsCommonDialog1.Action=4…………………………...EndSubFlags属性:设置所显示的字体类型,数据类型为Long。注意在显示“字体”对话框前,必须先将Flags属性设置为cdlCFScreenFonts,cdlCFPrinterFonts,或cdlCFBoth。否则,会发生字体不存在的错误。Flages属性应取下列值(见P267.表10.3):cdlCFScreenFonts&H1屏幕字体cdlCFPrinterFonts&H2打印机字体cdlCFBoth&H3打印机字体和屏幕字体。cdlCFEffects&H100显示删除线和下划线检查框以及颜色组合框10.2.4“打印”对话框打印对话框是当Action为5时的通用对话框,是一个标准打印对话窗口界面,如右图。属性FromPage:整型,起始页号Topage:整型,终止页号Copies:整型,打印份数如果打印驱动程序不支持多份打印,该属性有可能始终返回1。FromPageTopageCopies注意:打印对话框本身不能处理打印工作,仅仅是一个供用户选择打印参数的界面,所选参数存于各属性中,再通过编程来处理打印操作。例10.5例10.2中“打印...”按钮的事件过程10.2.5“帮助”对话框帮助对话框是当Action为6时的对话框,是一个标准的对话窗口用于制作应用程序的在线帮助。它不能制作应用程序的帮助文件,只能将已制作好的帮助文件从磁盘中读出,并与界面连接起来,达到显示并检索帮助信息的目的。帮助文件需要用其它的工具制作,如MicrosoftWindowsHelpCompiler。属性1HelpCommand(帮助命令)属性:用于返回或设置需要的在线Help帮助类型。2HelpFile(帮助文件)属性:用于指定已制作好的帮助文件的路径及文件名3HelpKey(帮助关键字)属性:用于指定帮助信息的内容,帮助窗口中显示由该帮助关键字指定的帮助信息。4HelpContext(帮助上下文)属性:例10.610.3菜单10.3.1菜单概述菜单是图形化界面一个必不可少的组成元素,通过菜单对各种命令按功能进行分组,使用户能够更加方便、直观地访问这些命令。Windows环境下的应用程序一般为用户提供三种菜单:窗体控制菜单(如图10-10所示)、下拉菜单(如图10-10所示)与快捷菜单(如图10-11所示)。启动菜单编辑器:有三种方法1单击工具栏菜单图标2工具/菜单编辑器(CTRL+E)3窗体上快捷菜单/菜单编辑器菜单编辑器操作界面如右所示。10.3.2菜单编辑器10.3.3菜单编辑器的使用技巧1.标题(Caption):2.名称(Name):3.快捷键(Shortcut):4.下一个(Next):5.←和→按钮6.插入(Insert)按钮:7.删除(Delete)按钮:8↓和↑按钮:9.复选(Checked)检查框:10.有效(Enabled)检查框:11.显示窗口列表(WindowList)检查框:根据设计要求,依次输入或选择所面项目,即可完成。例:菜单的主要属性1.标题(Caption):在窗口上显示,例如:输入&File,显示为:File,热键:Alt+F2.名称(Name):菜单项的名称,分界符也应有名称。3.快捷键(Shortcut):下拉列表框4下一个(Next):设置下一个菜单项。5.←和→按钮:“→”下一级菜单项;“←”上一级菜单项。6.插入(Insert)按钮:插入菜单项7.删除(Delete)按钮:删除菜单项8.↓和↑按钮:改变菜单项位置。9.复选(Checked)检查框:菜单项为选定项。10.有效(Enabled)检查框:True:菜单项可选;False:不可选。11.显示窗口列表(WindowList)检查框:决定是否显示所有打开的子窗体标题。对MDI窗体和MDI子窗体有效,对普通窗体无效。1.设计下拉菜单2.设计子菜单或改变子菜单级别3.为菜单项分组菜单名用减号“-”4.为菜单项指定访问键和快捷键与命令按钮设置访问键相同。5.为菜单项加上复选标记6.禁止使用菜单项在程序代码中可以通过程序代码:菜单名.Enabled=False7.菜单项的增减菜单设计的几项操作:10.3.4动态菜单(略)动态增减则是在运行阶段根据用户的选择来增加或减少菜单项,这主要是利用控件数组实现的。例10.710.3.5快捷菜单用VB菜单编辑器设计,用PopupMenu方法弹出[对象.]PopupMenu菜单名,标志,x,y标志:0:菜单项只对鼠标左键有反应。2:菜单项对鼠标左键和右键都有反应,PopupMenu方法只能用在MouseDown事件过程。例10.8将例10.7中设计的“编辑”菜单在右击文本框时作为快捷菜单显示出来。‘文本框的MouseDown事件过程PrivateSubtxtInput_MouseDown(ButtonAsInteger,_ShiftAsInteger,_XAsSingle,YAsSingle)IfButton=vbLeftButtonThenPopupMenumnuEdit,vbPopupMenuLeftButton,X,YEndIfEndSub
本文标题:53第10章 对话框与菜单程序设计
链接地址:https://www.777doc.com/doc-3931329 .html