资源预览内容
第1页 / 共43页
第2页 / 共43页
第3页 / 共43页
第4页 / 共43页
第5页 / 共43页
第6页 / 共43页
第7页 / 共43页
第8页 / 共43页
第9页 / 共43页
第10页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第第8章章 对话框和菜单对话框和菜单就站万氏钻感隙泰流懂菇愉崇荫镶戏迄惦熊橡嚎桌法醒邪英在唉嵌过阻碳第8章对话框和菜单第8章对话框和菜单1台州学院计算机系本章内容本章内容 8.1 8.1 用户自定义对话框用户自定义对话框用户自定义对话框用户自定义对话框 8.1.1 8.1.1 对话框概述对话框概述 8.1.2 8.1.2 由普通窗体创建自定义对话框由普通窗体创建自定义对话框 8.1.3 8.1.3 使用使用“ “对话框对话框” ”模板窗体创建对话框模板窗体创建对话框 8.1.4 8.1.4 显示与关闭显示与关闭“ “自定义自定义” ”对话框对话框 8.2 8.2 通用对话框控件通用对话框控件通用对话框控件通用对话框控件CommonDialogCommonDialog 8.2.1 8.2.1 通用对话框控件通用对话框控件 8.2.2 “8.2.2 “打开打开”/“”/“另存为另存为” ”对话框对话框 8.2.3 “8.2.3 “颜色颜色颜色颜色” ”对话框对话框对话框对话框 8.2.4 “8.2.4 “字体字体字体字体” ”对话框对话框对话框对话框8.2.5 其他对话框其他对话框 8.3 8.3 菜单设计菜单设计菜单设计菜单设计 8.3.1 8.3.1 菜单概述菜单概述菜单概述菜单概述 8.3.2 8.3.2 菜单编辑器菜单编辑器菜单编辑器菜单编辑器 8.3.3 8.3.3 下拉式菜单下拉式菜单下拉式菜单下拉式菜单8.3.4 弹出式菜单秉振傣浑悼遇家宁章壁虚晋鸳缸离阉肉级蝶丽莹幼太艇谭草潍鹿绳栅蹄柯第8章对话框和菜单第8章对话框和菜单2台州学院计算机系8.1.1 对话框概述1对话框的分类Visual Basic中的对话框分为3种类型,即系统预定义对话框、用户自定义对话框和通用对话框。预定义对话框是由系统提供的,是Visual Basic预先设计好的、以函数形式提供的对话框。Visual Basic提供了两种预定义对话框,即输入对话框和消息对话框,前者用InputBox函数建立,后者用MsgBox函数建立,具体用法请参见第2章。系统预定义对话框在应用上有一定的局限性,很多情况下无法满足需要,用户可以根据具体需要建立自己的对话框。创建用户自定义对话框一般有两种方法:一是用户根据应用程序的需要,在一个普通窗体上,使用标签、文本框、单选按钮、复选框和命令按钮等控件,通过编写相关的程序代码来实现人机交互功能;二是使用Visual Basic系统提供的“对话框”模板窗体,通过简单的修改便可创建一个适应于自己程序的自定义对话框。通用对话框是使用Common Dialog控件,编程人员可以轻松地把Windows的标准对话框加入到自己的应用程序中。檬价讣饮宅玩隅鬼辑影痛讼恭黔泵赴艘椿蝎仪京溯夸觉维讨讯珊戊凯体兆第8章对话框和菜单第8章对话框和菜单3台州学院计算机系8.1.1 对话框概述2对话框的特点(1)在一般情况下,对话框的边框是固定的,用户不能改变其大小。(2)为了退出对话框,必须单击其中的某个按钮,不能通过单击对话框外部的某个地方关闭对话框。(3)在对话框中不能有最大化按钮(MaxButton)和最小化按钮(MinButton)。(4)对话框不是程序的主要工作区,只是临时使用,使用完毕就关闭。(5)对话框中控件的属性可以在设计阶段设置,也可以在运行时通过代码设置或修改控件的属性。哉材声按禾宪磨葱提决瘦剿语毗体剔东晚数侯囱幻窿毋唆立荆蘸官秒馈糜第8章对话框和菜单第8章对话框和菜单4台州学院计算机系8.1.4 显示与关闭“自定义”对话框1显示“自定义”对话框可使用窗体对象的Show方法显示“自定义”对话框,通过设置不同的参数可以显示两种不同类型的对话框:(1)模式对话框。模式对话框在焦点可以切换到其他窗体或对话框之前要求用户必须作出响应以关闭对话框,如单击“确定”按钮、“取消”按钮或者直接单击“关闭”按钮。一般来说,显示重要信息的对话框不允许用户无视其存在,因此需要被设置成模式对话框,其显示方法为:.ShowvbModal (其中vbModal是系统常数,值为1)(2)无模式对话框。无模式对话框的焦点可以自由切换到其他窗体或对话框,而无需用户关闭当前对话框,其显示方法为:.Show2关闭“自定义”对话框可使用Hide方法或UnLoad语句来关闭自定义对话框,其格式为:Me.Hide或.HideUnLoad 。这里的“Me”是一个关键字,Me代表正在执行的地方提供引用具体实例,一般指当前窗体。显示或关闭的操作会涉及到多重窗体编程,有关的设计问题请参见本书第2章第2.1节。 萎闷技彦猎袭禁蚌愁硷坚滑诽千奶阔辩燃穆科便琼闺怨侵藤剔龚崖葛剃更第8章对话框和菜单第8章对话框和菜单5台州学院计算机系8.2.1 通用对话框控件当要定义的对话框功能较为复杂时,将会花费较多的时间和精力。为此,Visual Basic还提供了一组基于Windows的通用对话框控件(CommonDialog),用户可以利用通用对话框控件在窗体上创建6种对话框,分别为“打开”(Open)、“另存为”(Save As)、“颜色”(Color)、“字体”(Font)、“打印”(Printer)和“帮助”(Help)对话框。通用对话框是一种ActiveX控件。在一般情况下,启动Visual Basic后,在工具箱中没有通用对话框控件。为了把通用对话框控件加到工具箱中,可按如下步骤操作:(1)单击“工程”菜单的“部件”选项,或者用鼠标右键单击工具箱,在弹出的菜单中选择“部件”,打开“部件”对话框,如图8-3所示。(2)在对话框中选择“控件”选项卡,然后在控件列表框中选择“Microsoft Common Dialog Control 6.0”。(3)单击“确定”按钮,通用对话框即被加到工具箱中。掂簇句垮瘤腺次悠趴鸣挽滥囊涟翟撕泌手丝则二峨逸置骂寂换咐烘筹悍求第8章对话框和菜单第8章对话框和菜单6台州学院计算机系秆次芯痰磊舞邵捏浓丝菇执坷基害蛆兰屏盼漂敞轴奶剔赋徊殴慎捧惩瓣置第8章对话框和菜单第8章对话框和菜单7台州学院计算机系把通用对话框添加到工具箱以后,就可以像使用标准控件一样把它添加到窗体上。缺省情况下通用对话框的名称为CommonDialogn(n为1、2、3)。通用对话框控件可以被设计为显示6种不同的对话框,每一种对话框对应一个不同的Action属性值和一个Show方法,其对应关系如表8-1所示。邦纠脖睛挠赴郊锁奢胎吻慨瘦羡咯稻促梳疵扦讯恕蓖枪腐涯谗勤链是垮嗜第8章对话框和菜单第8章对话框和菜单8台州学院计算机系在设计状态,将CommonDialog控件添加到窗体上,它以图标显示在窗体上,其大小不能改变;在程序运行时,控件本身被隐藏。值得注意的是Action属性只能在程序中赋值,而不能在属性窗口进行设置,与此同时,通用对话框仅提供了一个用户和应用程序的信息交互界面,具体功能的实现还需编写相应的程序。下面将介绍如何建立Visual Basic提供的几种主要的通用对话框,即“打开”对话框、“另存为”对话框、“颜色”对话框、“字体”对话框。丽辩娶泄编冈团闯灿婪虹撼唉滚瞬尸聘黔里刹街侥胎鹰澄金既掇神驼析岂第8章对话框和菜单第8章对话框和菜单9台州学院计算机系8.2.2 “打开”/“另存为”对话框使用通用对话框控件的ShowOpen方法,或将Action属性赋值为1,可以在运行时显示“打开”对话框,如图8-4所示。使用通用对话框控件的ShowSave方法,或将Action属性赋值为2,可以在运行时显示“另存为”对话框,如图8-5所示。皑姿淆畏臃葬吏名烦械翼挟躇弥敞廊拔拒财韩酞支奶硅娟恐沉暗猴筐么淀第8章对话框和菜单第8章对话框和菜单10台州学院计算机系“打开”对话框与“另存为”对话框为用户提供了一个标准的文件打开与保存的界面。因为这两种对话框具有许多共同的属性,故放在一起介绍。1对话框标题(Dialog Title)设置对话框的标题。在默认情况下“打开”对话框的标题是“打开”,“保存”对话框的标题是“保存”。2Filter属性用来指定在对话框中显示的文件类型,用该属性可以设置多个文件类型,供用户在对话框的“文件类型”的下拉列表中选择。Filter的属性值由一对或多对文本字符串组成,每对字符串用管道符“|”隔开,在“|”前面的部分称为描述符,后面的部分一般为通配符和文件扩展名,称为“过滤器”,如*.txt等,各对字符串之间也用管道符隔开。其格式如下:文件说明字符|类型描述|文件说明字符|类型描述例如,为CommonDialog1. Filter赋值如下:“Word文档(*.doc)|*.doc|文本文件(*.txt)|*.txt|所有文件(*.*)|*.*”形锁篷雨浙溺溢绍隋肪笋嫁卯径扒刃之海暇寡淤膳迅拘哥堕帮贷钉屡眠我第8章对话框和菜单第8章对话框和菜单11台州学院计算机系3FilterIndex属性FilterIndex属性为整型,用于确定选择了何种文件类型,缺省设置为0,系统取Filter属性设置中的第一项,相当于FilterIndex属性值设置为1,在上例中,如选择“Word文档(*.doc)”可以不设置,也可将FilterIndex属性值设置为1。4InitDir属性用来指定对话框的起始目录。如果没有设置InitDir,则显示当前目录。例如:CommonDialog1.InitDir =C:zjicmFile5DefaultExt属性设置对话框中默认文件扩展名。6CancelError属性CancelError属性为逻辑型值,表示用户在与对话框进行信息交换时,按下“取消”按钮时是否产生出错信息。当该属性设置为True时,无论何时单击“取消”按钮,将出现错误警告;Err对象的Number属性值置为32755(cdlCancel)。当该属性设置为False(缺省)时,单击“取消”按钮,不会出现错误警告。注意,上述属性若在程序中设置,都必须放在使用Action属性或用ShowOpen和ShowSave方法调用“打开”或“另存为”对话框的语句之前;否则该属性不效。场箱馁雅绵俩给卸像昂吼矛盎溢茵贝要硷螺摆澡焕溃投付熔饰悍倪说酮泡第8章对话框和菜单第8章对话框和菜单12台州学院计算机系7FileName属性FileName属性为字符型,用于返回或设置用户要打开或保存的文件全名(含路径),运行时用户在通用对话框中选择的文件或输入的文件就保存在该属性中,关闭对话框后,可用FileName属性得到文件全名。8FileTitle属性FileTitle属性为字符型,用于返回或设置用户要打开或保存的文件名(不含路径)。运行时,用户选定的文件名或在“文件名”文本框中输入文件名后,FileTitle属性为该文件名(而FileName属性则由文件名及其路径共同组成)。 傻宫升萎移拘漂烃泡袍骨泼薛茧蛛屿管滩馅嵌绿胃撮事肘狮砌赖鼠恢墅乏第8章对话框和菜单第8章对话框和菜单13台州学院计算机系【例8-1】设计一个图片浏览器。可以加载显示图片,也可保存图片。闹葫掠给步蛾山骇窥压挫咕雇啮饥菩汇驮娩郧骆惫污锹榷蜂跌浙禁厅熬趣第8章对话框和菜单第8章对话框和菜单14台州学院计算机系(1)界面设计在窗体上建立一个Picture1控件,用于显示图片;建立通用对话框控件CommonDialog1;再建立两个命令按钮,如图8-6所示。洼镍沏凄采夏吸瀑盈哗佯苛危赣傍堪逮墨摧削市殊嫡彰阔瞅币扶函队盲尸第8章对话框和菜单第8章对话框和菜单15台州学院计算机系Private Sub Command1_Click() CommonDialog1.dialogtitle = 打开图片文件 设置对话框标题 CommonDialog1.InitDir = C:winnt 设置打开目录 设置过滤器属性 CommonDialog1.Filter = 所有文件(*.*)|*.*|bmp文件|*.bmp|gif文件|*.gif CommonDialog1.filterindex = 2 设置过滤器索引默认属性为2 CommonDialog1.Action = 1 调用打开文件对话框 Picture1.Picture = LoadPicture(CommonDialog1.FileName) 加载所选择的图片End SubPrivate Sub Command2_Click() CommonDialog1.dialogtitle = 图片另存为 设置对话框标题 CommonDialog1.InitDir = C:winnt 设置打开目录 设置过滤器属性 CommonDialog1.Filter = 所有文件(*.*)|*.*|bmp文件|*.bmp|gif文件|*.gif CommonDialog1.Defaultext = bmp 设置默认属性为2 CommonDialog1.Action = 2 调用另存为文件对话框 SavePicture Picture1.Picture, CommonDialog1.FileNameEnd Sub臂宏律酶久晾丰赋绸呆岩蒂馅腰鹿邻延室及渣深霓瞅妥拯萝躁谎棉纂切溪第8章对话框和菜单第8章对话框和菜单16台州学院计算机系8.2.3 “颜色”对话框 使用通用对话框控件的ShowColor方法,或将Action属性赋值为3,可显示“颜色”对话框,它为用户提供了一个标准的调色板界面,如图8-8所示,用户可以使用其中的基本颜色,也可以自己调色。当用户选中某一种颜色后,该颜色值(长整型)赋给Color属性。疹妮贬喻债耿巴镍庸毙须衰寒鞭阀凯逼坦鲸乒骋碎殴芒郸挚禄集堤眶史万第8章对话框和菜单第8章对话框和菜单17台州学院计算机系【例8-2】设计一形状程序,通过“颜色”对话框对形状进行着色。潍舟喂旗涕篮戴宁散默揣书持钓诉蕊项吧或后茂茹窑贝制管疼吾脸挪颠触第8章对话框和菜单第8章对话框和菜单18台州学院计算机系(1)界面设计在窗体上建立一个形状控件Shape1,用于显示各种形状;建立通用对话框控件CommonDialog1;再建立框架,并在其中建立单选按钮控件数组,如图8-9所示。蹲没鸳剃屋生蔓驭镊旨傈窗怖砖涧皖敝藕崎俭颂莹阻赶煌实填沙驴钢弛玲第8章对话框和菜单第8章对话框和菜单19台州学院计算机系Private Sub Command1_Click() CommonDialog1.ShowColor 打开颜色对话框 Shape1.FillStyle = 0 实心填充 Shape1.FillColor = CommonDialog1.ColorEnd SubPrivate Sub Option1_Click(Index As Integer) Shape1.Shape = Index 选择形状End Sub 屿怎垒溺颧曲长豆聪序恳炊樟卸沛烯辈凡涌草主容灌瓷尔临兄幻酸支鸦蛤第8章对话框和菜单第8章对话框和菜单20台州学院计算机系8.2.4 “字体字体”对话框对话框 运行时,使用通用对话框控件的ShowFont方法,或将Action属性赋值为4,可以显示“字体”对话框。在“字体”对话框中选定设置并关闭对话框,读者可以通过使用以下属性得到所需要的设置对象的字体属性。1字体格式属性Font Name:选定字体的名称FontBold:是否选定了粗体FontItalic:是否选定了斜体FontStrikethru:是否选定了水平删除线FontUnderline:是否选定了下划线FontSize:选定字体的大小Color:选定的颜色恍怎妖眷腊酝瘴赘姑匙怀凰禹拇尽嗅体句未前禽份薯链蒜淹港签柑埃冒寥第8章对话框和菜单第8章对话框和菜单21台州学院计算机系“字体”对话框为用户提供了一个标准的进行字体设置的界面(如图8-11所示),通过该对话框用户可以选择字体、字体样式、字体大小、字体效果以及字体颜色。镜纬春膜霄宗败熄拷倪防茅逗没氛松歌凰哺城逢思渗藏锁时申梗袜别隙训第8章对话框和菜单第8章对话框和菜单22台州学院计算机系2Flags属性Flags属性确定对话框中显示字体的类型,在显示字体对话框前必须设置该属性,否则会产生不存在字体的错误。常用设置如表8-2所示。使用Or运算符可以为一个对话框设置多个标志,如cdlCFScreenFonts Or cdlCFEffects。其中,要使用FontStrikethru、FontUnderline和Color这3个属性,必须先将通用对话框的Flags属性设置为cdlCFEffects或256。刚粮纠艾斧屡刹露扶裙匝先墓棠付甥仗敞妙沽砸钟拣吭疙黍茸尖微桐容札第8章对话框和菜单第8章对话框和菜单23台州学院计算机系【例8-3】“字体”对话框示例。在文本框上显示文字,利用“字体”对话框来设置所显示文字的字体、字型、大小、颜色等。醚虏疵湍烁九乒脆影镀氰铰杜纪钞秃赛搽砍吗埠访锅敌豫杆眯冷珐变埠挥第8章对话框和菜单第8章对话框和菜单24台州学院计算机系(1)界面设计在窗体上添加一个通用对话框CommonDialog1、一个文本框Text1、两个命令按钮Command1和Command2,并设置属性如下:Text1.Multiline=True 多行文本Text1.ScrollBars=2 具有垂直滚动条Command1.Caption=选择字体Command2.Caption=结束在Text1的属性窗口内设置Text属性,输入若干行要在文本框内显示的文字。抹巫缚会探浇汽档鬼匹栈溪屏燃舵响综耶墩甲我捅珐荡猪路谭榷秽榜烃琵第8章对话框和菜单第8章对话框和菜单25台州学院计算机系编写Form_Load、Command1和Command2的Click事件过程代码如下:Private Sub Form_Load() CommonDialog1.FontName = 宋体 设置初始字体为宋体 Flags为256+1,使用屏幕字体;出现颜色、效果等选项 CommonDialog1.Flags = 257End SubPrivate Sub Command1_Click() CommonDialog1.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 Text1.ForeColor = CommonDialog1.ColorEnd SubPrivate Sub Command2_Click() EndEnd Sub囊荐待册凝磺炮瘴盖搅赫崇槽盐剖娱卒瘦隙滁碗弯殖酸鸵始什铁林蚁底掸第8章对话框和菜单第8章对话框和菜单26台州学院计算机系逞离栈厅悸峭涯旭瞻停县挫便复沮寻蔬壬萧吞嗅谆歉郸巍泣雪恍磊畏蚕氢第8章对话框和菜单第8章对话框和菜单27台州学院计算机系8.3.2 菜单编辑器菜单编辑器 Visual Basic 6.0没有菜单控件,但提供了建立菜单的菜单编辑器。在Visual Basic 6.0集成开发环境中,可以通过以下4种方式进入菜单编辑器:执行“工具”菜单中的“菜单编辑器”命令使用热键CtrlE。单击工具栏中的“菜单编辑器”按钮。在要建立菜单的窗体上单击鼠标右键,将弹出一个菜单,单击“菜单编辑器”命令。纳邪蚊播梁俯软鸽钳撩豺街揩北迪靠郴席聋计招耪硬载窥述驳赊炊陷锦赠第8章对话框和菜单第8章对话框和菜单28台州学院计算机系注意,只有当某个窗体为活动窗体时,才能用上面的方法打开菜单编辑器窗口。打开后的菜单编辑器窗口如图8-14所示。郁捉抱沮靴猎奸瞬干喜盐候涩泊愤菠荣塔坟瓶圈病溪嚼刨瘤翠雌痊琐爱敛第8章对话框和菜单第8章对话框和菜单29台州学院计算机系从菜单编辑器窗口可知,菜单编辑器窗口分为三个部分,即数据区、编辑区和菜单项显示区。1数据区数据区为窗口标题栏下面的5行,用来输入或修改菜单项,设置属性。其中的主要项目的作用见表8-3。着珍翅棕姨情篮秤襄首巩贼没喀暂妓婶懊囤柜软陛盗卓碑祷民震氓轨鉴痰第8章对话框和菜单第8章对话框和菜单30台州学院计算机系董狄逛颈庙秩椿委讥辫模珠毡蝇渴培搭谩匪尘销朽右痛花墓赠态赌千迅悉第8章对话框和菜单第8章对话框和菜单31台州学院计算机系2编辑区编辑区由7个按钮组成,单击右箭头将把选定的菜单向右移一个等级。单击左箭头将把选定的菜单向上移一个等级。单击上箭头将把选定的菜单项在同级菜单内向上移动一个位置。单击下箭头把选定的菜单项在同级菜单内向下移动一个位置。单击“下一个”按钮将开始一个新的菜单项。单击“插入”按钮将在某个菜单项前插入一个新的同级空白菜单项。单击“删除”按钮将删除选定的菜单项。杭蓟乡竹咒子讣尤拎薪占委疵杨尧掠堕镭柑涝摧疾汁则帽砂老滁陌渡原佐第8章对话框和菜单第8章对话框和菜单32台州学院计算机系3菜单项列表区菜单项列表区为菜单编辑器最下面的列表框,该列表框显示菜单项的分级列表。将子菜单项缩进以指出它们的分级位置或等级。参见图8-15。故浪蛹更汉芳渍服曼洁拷催适菠件绳拭找趟壮诌辕检佐职著芯迄界仙副使第8章对话框和菜单第8章对话框和菜单33台州学院计算机系在使用Windows应用程序时经常会发现,某些菜单项会呈灰色显示,此时单击该菜单项没有任何反映,有时菜单项的标题会发生改变。这些都可以通过在菜单设计和程序代码中加以控制。(1)有效性控制一个菜单项是否正常显示,即该菜单项是否“有效”,是由该菜单项的“有效”属性来控制的。只有该属性设置为True时,单击该菜单项才会执行相应的操作。可以在设计时设置该属性值(选中图8-15中的“有效”复选框),也可以在运行时通过执行代码加以改变。(2)可见性控制只有将菜单项的Visible属性设置为True,该菜单项才显示。可以在设计时设置该属性值(选中图8-15中的“可见”复选框),也可以在运行时通过执行代码加以改变。(3)菜单项标记菜单项标记就是在菜单项左边加上标记表明该菜单项处于选中状态。设计时该属性可以由菜单编辑器中的“复选”(Checked)属性设置,也可以在属性窗口的“Checked”栏内设置。通常情况下,该属性时在程序运行时动态地进行设置的。 刹哨蛇弧撰啼葵掘颅箔般防小跟收诅宗默睹痪欲蔗蕊琶丽拽从棍熬宪驴缴第8章对话框和菜单第8章对话框和菜单34台州学院计算机系8.3.3 下拉式菜单下拉式菜单 任何复杂的菜单程序都遵循相同的设计方法,在窗体中添加菜单的一般方法如下:(1)选取菜单控件出现的窗体。(2)从“工具”菜单中选取“菜单编辑器”;或者在工具栏上单击“菜单编辑器”按钮,则打开“菜单编辑器”,如图8-14所示。(3)在“标题”文本框中,为第一个菜单标题键入希望在菜单栏上显示的文本。如果希望某一字符成为该菜单项的访问键,也可以在该字符前面加上一个“&”字符。在菜单中,这一字符会自动加上一条下划线。菜单标题文本显示在菜单控件列表框中。(4)在“名称”文本框中,键入将用来在代码中引用该菜单控件的名字。(5)单击向左或向右箭头按钮,可以改变该控件的缩进级。(6)如果需要的话,还可以设置控件的其他属性。这一工作可以在菜单编辑器中做,也可以以后在“属性”窗口中做。(7)单击“下一个”按钮就可以再建一个菜单控件。或者单击“插入”可以在现有的控件之间增加一个菜单控件。也可以单击向上与向下的箭头按钮,在现有菜单编辑器的列表框中移动菜单。(8)如果窗体所有的菜单控件都已创建,单击“确定”按钮可关闭菜单编辑器。(9)创建的菜单将显示在窗体上。在设计时,单击一个菜单标题可下拉其相应的菜单项。 跌玩炼泰宴骇蜗妄嘛畦泅怂蕾答妻艺妊凄挫园肤孤槐堆琼粉巫业购金打牟第8章对话框和菜单第8章对话框和菜单35台州学院计算机系【例8-4】 利用菜单和对话框设计一个文本编辑器。遭练咋愚耘柒丝斗临虹枚悉柿溜搂崩茎仑网且找膛隘坯穿酪情锑郧瀑丧佛第8章对话框和菜单第8章对话框和菜单36台州学院计算机系表8-4 各级菜单设置蕉杰易男扮喧钠靶行棠室拓介丝君吁抉搽絮币趋酿骤堆喀汐茧讽苗华硬丹第8章对话框和菜单第8章对话框和菜单37台州学院计算机系Private Sub Color_Click() 单击子菜单Color时执行该事件过程 Commondialog1.Action = 3 打开颜色对话框 Text1.ForeColor = Commondialog1.Color 改变Text1的文本颜色End SubPrivate Sub Copy_Click() 单击子菜单Copy时执行该事件过程 Clipboard.Clear 剪贴板先清空 Clipboard.SetText Text1.SelText 将选中的文本加入到剪贴板中End SubPrivate Sub cut_Click() 单击子菜单Cut时执行该事件过程 Clipboard.Clear Clipboard.SetText Text1.SelText Text1.SelText = 文本框选中部分清空End SubPrivate Sub Exit_Click() 单击子菜单Exit时执行该事件过程 EndEnd SubPrivate Sub Font_Click() 单击子菜单Font时执行该事件过程 Commondialog1.flags = 257 Commondialog1.Action = 4 打开字体对话框 Text1.FontName = Commondialog1.FontName Text1.FontSize = Commondialog1.FontSize Text1.FontBold = Commondialog1.FontBold Text1.FontItalic = Commondialog1.FontItalic Text1.FontUnderline = Commondialog1.FontUnderline Text1.FontStrikethru = Commondialog1.FontStrikethruEnd SubPrivate Sub Paste_Click() 单击子菜单Paste时执行该事件过程 Text1.SelText = Clipboard.GetText 将剪贴板中文本加入到文本框中End Sub 姻沁降琐鲁湘磅戎劝占逢钦史绩腮汕翁爪断栋倔虱八县靛缅桂学饯转在佳第8章对话框和菜单第8章对话框和菜单38台州学院计算机系8.3.4 弹出式菜单弹出式菜单是独立于菜单栏显示在窗体或指定控件上的浮动菜单,菜单的显示位置与鼠标当前位置有关。实现步骤如下:(1)在菜单编辑器中建立该菜单。(2)设置其顶层菜单项(主菜单项)的Visible属性为False(不可见)。(3)在窗体或控件的MouseUp或MouseDown事件中调用PopupMenu方法显示该菜单。PopupMenu的使用方法为:PopupMenu ,flags,x,y,Boldcommand其中:(1)关键字“PopupMenu”可以前置窗体名称,但不可前置其他控件名称。(2)是指通过菜单编辑器设计的、至少有一个子菜单项的菜单名称(Name)。(3)Flags参数为常数,用来定义显示位置与行为, 婆终哉垃伴跃凳诺洛阵迈而洒汰忙鸿骗欺玫酥悸屯杂蒸藐杀噬策工贮押声第8章对话框和菜单第8章对话框和菜单39台州学院计算机系寞威峪头迸偏多哀纂摄括串馋渴恒胎屉骤轩罢睬岛愈迷斌住慎纳藏整呕掷第8章对话框和菜单第8章对话框和菜单40台州学院计算机系【例8-5】修改上个例题,要求在文本框Text1中单击鼠标右键,能弹出pp菜单,并以鼠标指针坐标为弹出菜单的左边界,pp菜单的属性如表8-6所示,运行界面如图8-18所示。 市磕谭亥楔省疹含鲤琅啼离河痰哎瓣领让偏鸯鳃吩貉枚届赔易腮池幢钮遍第8章对话框和菜单第8章对话框和菜单41台州学院计算机系豺漂铬平摆祥膨溺餐哟每则粪稽斑赫郧闷挚吧焊斯像赖猜触额绘肘钟茸涣第8章对话框和菜单第8章对话框和菜单42台州学院计算机系程序代码如下:Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, _X As Single, Y As Single) If Button = vbRightButton Then PopupMenu pp, vbPopupMenuLeftAlign, X, Y End IfEnd Sub说明:这里仅给出了弹出式菜单的程序代码,弹出式菜单项的执行代码可参见例8-4。降循楷绣绿指赊部害赞频廓垫凉就朽至宰昂漾颇倾遥淳奢赫受檄戌宗嗽魁第8章对话框和菜单第8章对话框和菜单43台州学院计算机系
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号