VB编程-菜单

来源:互联网 作者:e时代无名 更新时间:2010-09-15 12:24 点击:
我们经常在Windows操作里遇到各种各样的菜单,菜单的操作把各种命令结构化、分分类化,也节省了命令所占的空间,从作用上来讲,菜单类似于按钮,但它只有一个事件――Click。 VB作为Windows下的可视编程工具,菜单的设计当然很容易实现,VB3.0按下Ctrl+M,VB

我们经常在Windows操作里遇到各种各样的菜单,菜单的操作把各种命令结构化、分分类化,也节省了命令所占的空间,从作用上来讲,菜单类似于按钮,但它只有一个事件――Click。

  VB作为Windows下的可视编程工具,菜单的设计当然很容易实现,VB3.0按下Ctrl+M,VB4.0以上的版本请按下Ctrl+E,便可呼叫出菜设计的窗口,无论VB的版本,这个窗口的样式是大同小异的,请见图5-1。

05-01.gif (4736 字节)

前面说过,菜单相当于简单的按钮,它有几个属性,其中的大部分我们都曾经见过,包括Name、Caption、Index、Checked、Enabled、Visible、快捷键和热键等等。其中Name是必须的。下面请跟我一起设计第一个菜单。

首先在Caption添入“文件”,Name为“mnuFile”,按下Next按钮,这样就建立了第一级菜单,注意菜单设计窗口的左中有四个箭头,按下向右的箭头,出现了一排小点,如图5-2,在VB里这叫缩排,这样就可以开始建立第二级菜单。

05-02.gif (4885 字节)

小知识:实际上我们在生活就中经常用到缩排,写文章时开头要空两格就是一种缩排,在编写程序时更需要缩排,这样使程序结构化,便于观察,当然菜单设计里的缩排有更多的用处。

接着填写下一菜单项,Caption为“新文件”,Name为“mnuFileNew”,按下Next键。

小知识:VB一共如许建立6级子菜单,如图5-3,尽量不要建立这样的菜单,要知道藏在越深处的菜单项越难以被人发现,一个友好的程序界面应该让用户马上找到需要的命令。

05-03.gif (5437 字节)

接着重复以上步骤,创建以下三个菜单项:

 

Caption 保存

Name mnuFileSave

Level 1

Caption 另存为

Name mnuFileSaveAs

Level 1

Caption 载入

Name mnuFileLoad

Level 1
 


  我们在菜单里还经常看到把不同项分开的分隔条,在VB里也很容易做到,把Caption设为“-”(减号),Name为mnuBar1。最后增加这个菜单条的最后一项,Caption为“退出”,Name为mnuFileExit。现在可以退出菜单设计窗口,菜单如图5-4。

05-04.gif (2574 字节)
  怎么样,经过几章的学习,是不是觉得Windows世界也不是那么神秘?也对,也不对。的确,我们很轻易的实现了这么多的功能,但如果你仔细想想,我们的程序还什么也不会做呢!可以说是徒有其表,要实现强大的功能,恐怕要学很长很长时间,而现在仅仅是个开头,并不是想入非非的时候,我们还要继续努力! 现在再次按下Ctrl+E,重回菜单设计窗口,接着添加菜单。(按下向左的箭头,可以使菜单上升一级,Level代表菜单的级别),根据下表添加新的菜单项:

Caption 编辑

Name mnuEdit

Level 0

Caption 剪切

Name mnuEditCut

Level 1

Short-Cut Ctrl+X

Caption 复制

Name mnuEditCopy

Level 1

Short-Cut Ctrl+C

Caption 粘贴

Name mnuEditPaste

Level 1

Short-Cut Ctrl+V

Caption 关于

Name mnuAbout

Level 0

 
其中Short-Cut就是平常我们说的热键,你可以在菜单设计窗口中找到,设置一个你需要的组合键,这样不论窗口的焦点处于何处,菜单在第几层,只要按下热键,就相当于调用了该项的Click事件。结果如图5-5。

05-05.gif (2732 字节)
从Win95以来程序里引入了鼠标右键功能,使鼠标有了更大的用处,在VB里我们也很容易实现。 打开Form_MouseDown事件,该事件有两个参数:Button,当按下左键时Button返回1,当按下右键时Button返回2,;Shift,是指在点击鼠标时按下的键盘键,如Shift、Ctrl、Alt,这些我们将在以后讨论,但很难避免在一章中不涉及到不该涉及的内容,学习时有个大概的理解即可。下面在该事件里添加代码(效果如图5-6):

05-06.gif (2215 字节)
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = 2 Then

PopupMenu mnuEdit, vbPopupMenuLeftAlign

Else

Exit Sub

End If

End Sub

在上面的代码中我们用到了PopupMenu方法,它的语法是:

object.PopupMenu 菜单名,标记,X坐标,Y坐标

Tags: 编程学习
  • [智多PC网]刊登此文只为传递信息,并不表示赞同或者反对作者观点。
  • 如果此内容给您造成了负面影响或者损失,本站不承担任何责任。
  • 如果内容涉及版权问题,请及时与我们取得联系。
0
0

文章评论