我在这里学编程 进阶篇 共28页[1. 2 3 4 >5< 6 7 ».. 最后一页]

 快捷菜单

   Windows应用程序中,除了菜单栏以外,还存在着另外—种快捷菜单。快捷菜单是一种独立于菜单栏而显示在窗体的浮动菜单,在不同的对象上单击鼠标右键,弹出的快捷菜单中的命令也是不同的。快捷菜单总是提供与当前指针所指对象相关的操作命令。例如,将鼠标指针移动到VB的工具箱上,单击右键则弹出如图所示的快捷菜单, 通过该快捷菜单中的命令,用户可以方便地执行对工具箱的有关操作。

为应用程序建立快捷菜单,会使程序的操作更方便快捷。通过菜单编辑器创建的,并且创建的方法与创建普通菜单相同,下面给出一个创建快捷菜单的实例。

实例创建快捷菜单

该程序的目的的是,在窗体上在单击右键,则弹出一个快捷菜单“背景色”,通过它可以设置窗体的背景色,在[确定]按钮上单击右键,也可以弹出,通过它可以设置按钮的颜色以及字体。

打开[代码]窗口,编写按钮的MouseUp事件过程如下:

Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
       If Button = 2 Then
          PopupMenu PopCom
       End If
     End Sub

由于快捷菜单是在单击右键时弹出的,因此,在该段代码中使用了一个 If语句来判断用户所单击的键,如果单击的是右键(Button参数的值为2),则使用窗体的PopupMenu方法显示快捷菜单。

    PopupMenu方法的一般格式是:

 

    [窗体名1PopupMenu菜单名,FlagsxyBoldCommand

PopupMenu方法有5个参数,其中参数“菜单名”是必须的,而其他参数是可选的。“菜单名”是指菜单标题的名称。例如,已创建的两个快捷菜单的菜单名分别是PopComPopForm。其中参数xy分别用宋指定快捷菜单出现位置的横坐标与纵坐标,并且基准点由nags参数指定。如果省略,则快捷菜单就显示在鼠标指针当前的位置。参数nags用来定义快捷菜单的基准点与操作方法,分别如表所示。

Flags参数的取值与基准点
         0(默认)   X坐标是指快捷菜单的左边界
         4         X坐标是指快捷菜单的中心位置
         8         X坐标是指快捷菜单的右边界

Flags参数的取值与操作方法
         0(默认)   通过单击鼠标左键,选择菜单项
         2         通过单击鼠标左键或右键,选择菜单项,

F1ags参数的取值也可以是上述两组取值的相加(每组只能取一个)。例如,Flags=6,则表明它同时具有F1aSs=4F1ags=2的特征。这一点与在前面学习的其他方法的F1ags参数是相同的。

参数BoldCommand的作用是指定在快捷菜单中以粗体显示的菜单名称。一个快捷菜单中只能有一个菜单项以粗体显示。

同样,编写窗体的MouseUp事件过程如下:

Private Sub PupCc_Click()
    DiaColor.Action = 3
    Con.BackColor = DiaColor.Color
    End Sub
    Private Sub PopFc_Click()
    DiaColor.Action = 3
    Form1.BackColor = DiaColor.Color
    End Sub

在程序运行时,通过上述代码可以在窗体上显示快捷菜单,但是其中的命令不起作用。还需要编写快捷菜单中菜单项的Click事件代码,代码如下:   

Private Sub PupFont_Click(Index As Integer)
    Select Case Index
    Case 0
      Con.FontName = "宋体"
      PupFont(0).Checked = True
      PupFont(1).Checked = False
      PupFont(2).Checked = False
   Case 1
      Con.FontName = "隶书"
      PupFont(1).Checked = True
      PupFont(0).Checked = False
      PupFont(2).Checked = False
   Case 2
      Con.FontName = "幼圆"
      PupFont(2).Checked = True
      PupFont(0).Checked = False
      PupFont(1).Checked = False
   End Select
   End Sub

    运行该程序,在窗体上单击右键,就会弹出一个快捷菜单,单击[背景]选项,则打开[颜色]对话框,从中选择一种颜色,单击[确定]按钮,可以发现窗体的背景颜色已被改变了。再将鼠标指针移动到按钮上,单击右键,也会弹出一个快捷菜单,通过该菜单可以设置按钮的颜色以及其上文本的字体。如图所示的是使用快捷菜单将按钮上文本的字体设置为隶书。

 

我在这里学编程 进阶篇 共28页[1 2 3 4 >5< 6 7 ».. 最后一页]