您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 资本运营 > 11-2菜单项的控制与弹出式菜单
单位:张家口市职教中心编著:程伟第1页共4页教案序号11-2学科VisualBasic班级:课题菜单项的控制与弹出式菜单课型新授教具多媒体系统课时2【教学知识与技能目标】1.掌握菜单项的控制方法。2.掌握弹出式菜单建立。【情感态度与价值观目标】通过本节的学习,学生能在制作简单的弹出式菜单,并在程序中进一步理解弹出式菜单的作用。【教学重点】菜单项的控制与弹出式菜单【教学难点】弹出式菜单的建立【教学方法】讲解法、练习法、演示法【教学过程】一.组织教学1、核对出勤人数2、说明本课的教学要点和目标任务。二.复习提问VisualBasic6.0中可以把菜单项看成一个控件,它可以接收的唯一事件是什么?(单击Click)(学生回答,教师总结引入新课)三.新课讲授四.课程小结布置作业【教学目标实现与步骤】在Windows环境下,有些菜单项比较特殊,如:灰色、有下划线的每、有对勾等。一、有效性控制。1、功能:为了能使程序正常运行,有时候需要使某些菜单顶失效,以防止误操作。如:没有选定对象时,剪切和复制命令就没有意义;当剪贴板这空时,粘贴命令就没有意义。这时需要使相应的命令失效,以灰色显示。2、设置方法①、在菜单编辑器中“有效”属性前的对勾去掉。②、在代码中设置:菜单项名.Enabled=False。说明:修改状态时,与上面的操作相反。例:编程完成text1中文本被选定后复制到剪贴板,再粘贴到text2。11-2-1要求:①、开始“复制”,“粘贴”菜单项不可用。②、当有选择内容时,“复制”可用。③、当剪贴板有内容时,“粘贴”可用。PrivateSubfz_Click()Clipboard.SetTextText1.SelText‘选择的内容送剪贴板zt.Enabled=TrueEndSubPrivateSubtc_Click()End单位:张家口市职教中心编著:程伟第2页共4页EndSubPrivateSubText1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=1ThenIfText1.SelTextThenfz.Enabled=TrueEndIfEndIfEndSubPrivateSubzt_Click()Text2.Text=Clipboard.GetTextEndSub【学生练习】当前文本的字体在菜单中被关闭——菜单项呈灰色,可以选择未被选择的字体。11-2-2二、菜单项标记。1、概念:菜单标记就是在菜单前加上一个“√”标志。它一方面可以明显地表示当前某些命令的状态,另一方面可以表示当前选择的是哪一个菜单。2、该项对应属性是Checked,当Checked=False(在菜单编辑器中没有选择“复选”项)时相应的菜单项前没有标志;反之,Checked=True有标志。3、菜单标记通常是动态地加上或取消。使用如下代码:菜单名.Checked=NotChecked。举例在11-2-2中。三、菜单项隐藏VB设计的菜单可以根据程序的运行状态动态地进行调整。当菜单项所指示的操作不适合当前的环境时,可以暂时将其关闭(菜单名.Visible=False),不让用户选择该菜单项,也可以干脆把它隐藏起来,就像根本没有这个菜单项一样,等到条件成熟时,再重新显示(菜单名.Visible=True)被隐藏的菜单项。ForEachxInfname’fname是菜单控件数组x.Visible=IIf(x.Index=Index,False,True)Next四、键盘选择1、用键盘选取菜单有两种方法,即热键(ShortKey)和访问键(AccessKey)。2、热键(通常称快捷键),是不用打开菜单可以直接运行菜单命令的组合键。速度快,适合熟悉键盘的用户使用。3、访问键是菜单项中加了下划线的字母,在下拉显示菜单项后就可以按Alt键和加了下划线的字母键,就可以执行相应的菜单项。说明:①、使用访问键时,菜单要一级一级地打开;而快捷键不需要。②、快捷键中没有Alt+字母键。③、访问键只能是一个字符,而且这个字符必须是键盘上的某个键,否则没有实际意义。通常用键盘上有的西文字符作为访问键。单位:张家口市职教中心编著:程伟第3页共4页五、弹出式菜单1、弹出式菜单是一种小型的菜单,它可以在窗体的某个地方(任意位置)显示出来,对程序事件作出响应。弹出式菜单能以灵活的方式为用户提供更加便利的操作,它可以根据用户单击鼠标右键时的位置,动态地调整菜单项的显示位置,同时也改变菜单项显示内容,因此弹出式菜单又称为“上下文菜单”或“快捷菜单”。2、弹出式菜单的建立:①、用菜单编辑器建立菜单。②、把菜单名(主菜单项)的“可见”属性设置为False,子菜单项设置为True。③、用PopupMeun方法弹出显示。3、PopupMenu方法(1)、格式:[〈窗体名〉.]PopupMenu〈菜单名〉[,flags[,x[,y[,boldcommand]]]](2)、功能:击鼠标键显示弹出式菜单,省略参数X、Y和Flags时,单击鼠标右键弹出菜单,鼠标光标所在的位置为弹出式菜单左上角的坐标。(3)、说明:①、菜单名是在菜单编辑器中定义的主菜单项名,方法中不可以省略。②、X、Y是横坐标和纵坐标,表示弹出式菜单在窗体上的位置(与Flags参数配合使用),具体如下:Ⅰ、默认情况下,以窗体的左上角为坐标原点。Ⅱ、省略参数Flags,不省略X、Y时,X、Y为弹出式菜单左上角的坐标。Ⅲ、同时使用参数X、Y和Flags时,有如下几种情况:Flags=0:X、Y为弹出式菜单左上角的坐标。Flags=4:X、Y为弹出式菜单顶边中间的坐标。Flags=8:X、Y为弹出式菜单右上角的坐标。③、BoldCommandBoldcommand参数:可以指定在显示的弹出式菜单中想以粗体字体出现的菜单项的名称。在弹出式菜单中只能有一个菜单项被加粗。④、Flags参数为一些常量数值的设置,包含位置常数及行为常数两个指定值,见下表。位置常数值说明vbPopupMenuLeftAlign0(默认)X坐标指定菜单左边位置vbPopupMenuCenterAlign4X坐标指定菜单中间位置vbPopupMenuRighAlign8X坐标指定菜单右边位置行为常数值说明vbPopupMenuLeftButton0(默认)菜单命令只接受左键单击vbPopupMenuRightButton8菜单命令可接受右键单击⑤、为了显示弹出式菜单,通常把PopupMenu方法放在MouseDown事件中,该事件响应所有的鼠标单击操作。习惯用右键弹出菜单:IfButton=2例如:编程完成下图中的弹出式菜单。PrivateSubfname_Click(IndexAsInteger)SelectCaseIndex单位:张家口市职教中心编著:程伟第4页共4页Case1Label1.FontName=宋体Case2Label1.FontName=隶书Case3Label1.FontName=楷体Case4Label1.FontName=黑体EndSelectForEachXInfnameX.Visible=IIf(X.Index=Index,False,True)NextEndSubPrivateSubLabel1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=2ThenPopupMenustylEndIfEndSubPrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=2ThenPopupMenutextFont,6EndIfEndSubPrivateSubstyle_Click(IndexAsInteger)style(Index).Checked=Notstyle(Index).CheckedSelectCaseIndexCase1Label1.FontBold=style(Index).CheckedCase2Label1.FontItalic=style(Index).CheckedCase3Label1.FontUnderline=style(Index).CheckedEndSelectEndSubPrivateSubtxt_Click()temp=InputBox(请输入标题板的新内容,输入,Label1.Caption)IftempThenLabel1.Caption=tempEndIfEndSub【小结】菜单项的控制与弹出式菜单【布置作业】1、整理好笔记,熟记所讲的要点。2、根据课上所讲,完成如下例子。
本文标题:11-2菜单项的控制与弹出式菜单
链接地址:https://www.777doc.com/doc-3095573 .html