用VISUAL BASIC6.0实现弹出式菜单。
建立含有如下控件的窗体:
控件NAME CAPTION INDEX
弹出式菜单窗体FORMENU 弹出式窗口实例1
菜单项MENUS 编辑
子菜单项MENUS1 窗口移动0
子菜单项MENUS1 窗口最小化1
子菜单项MENUS1 窗口最大化2
子菜单项MENUS1 - 3 &&分割线
子菜单项MENUS1 退出4
(2)程序清单:
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WM_SYSCOMMAND = &H112
Private Const SC_MOVE = &HF010&
Private Const SC_MINIMIZE = &HF020&
Private Const SC_MAXIMIZE = &HF030& >
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 2 Then
Me.PopupMenu FORMENU!MENUS
End If
End Sub
Private Sub MENUS1_Click(Index As Integer)
Dim X As Long
Select Case Index
Case 0
X = SendMessage((FORMENU.hwnd), WM_SYSCOMMAND, SC_MOVE, 0&)
Case 1
X = SendMessage((FORMENU.hwnd), WM_SYSCOMMAND, SC_MINIMIZE, 0&)
Case 2
X = SendMessage((FORMENU.hwnd), WM_SYSCOMMAND, SC_MAXIMIZE, 0&)
Case 3
Case 4
Unload FORMENU
End Select
End Sub
用VISUAL FOXPRO 6.0实现弹出式菜单。
建立含有如下控件的窗体POPMENU.SPR:
控件NAME CAPTION
窗体FORM1 弹出式菜单实例2
命令按钮COMMAND1 单击鼠标右键演示弹出式菜单
(2)建立弹出式菜单MENUS.MPR:
菜单项窗口移动
菜单项窗口最小化
菜单项窗口最大化
在COMMAND1控件的RIGHTCLICK事件中输入:
DO MENUS.MPR &&调用弹出式菜单
运行环境:WINDOWS98,VISUAL BASIC 6.0、VISUAL FOXPRO 6.0 FOR WINDOWS.