ポップアップメニューの作成・表示 |
ポップアップメニューを作成し表示する | |
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