ポップアップメニューの作成・表示
                                                        玄関へお回り下さい。
ポップアップメニューを作成し表示する
       1.ポップアップメニューの作成
  基本的にはツールバーの作成と同じです。
  ただ、メニューバーには表示される必要がないので[表示]チェックボックスをOFFにします
  (下図参照)
  

□表示のVを外す、ただし、メニューのタイトルだけでサブメニューはチェックを入れておくこと
又、タイトルの名前(M)のところでつけた名前 (MyPopMe) がポップアップメニュー呼び出しのメニューネームになる。


2.ポップアップメニューを表示する。

  構文
    object.PopupMenu menuname, flags, x, y, boldcommand
    (詳しくはヘルプ参照)

  Private Sub Form_MouseDown(Button As Integer, Shift _
                    As Integer, X As Single, Y As Single)
    'マウスの右クリックを検知
    If Button = vbRightButton Then
      'ポップアップメニューの表示
      Form1.PopupMenu MyPopMe
    End If
  End Sub

      


3.メニューの実行
  後は通常のメニューと同じです
  Private Sub BakColBlue_Click()
    Form1.BackColor = QBColor(9)
  End Sub

4.特定の場所での表示
  テキストボックス上で別のポップアップメニューを表示する場合
  Private Sub Text1_MouseDown(Button As Integer, Shift _
                   As Integer, X As Single, Y As Single)
    'マウスの右クリックを検知
    Text1.Enabled = False     'この3行を入れると
    Text1.Enabled = True      '右のシングルクリックで
    Text1.SetFocus         'カスタムメニュー表示

    If Button = vbRightButton Then
    'ポップアップメニューの表示
      Form1.PopupMenu MyPopMe
    End If
  End Sub

ただし、この場合右のダブルクリックもしくは、右のシングルクリックを2回しないと表示しません
右のシングルクリックには、標準のポップアップメニューが割り当てられているからかな?と思います。
従って上記のように3行追加すると右のシングルクリックで表示します。又、APIを使ったやり方がマイクロソフトのサポートページにあります。

5.メニューの使い分け(複数のメニューを使用する)
  メニュー作成時下図のようにメニュー毎にチェックをはずし作成する
  下図では3種類のポップアップメニューを作成したことになる。
 




01/06/07