• ベストアンサー

フォームでの右クリックを禁止したい

フォーム上で右クリック禁止にしたいのですが どうすればいいでしょうか? フォームの KeyDown(キークリック時) KeyPress(キー入力時) KeyUp(キー開放時) のどれかのイベントな気がしますが どのイベントにどのようなVBAコードを書けばいいのかわかりません。 ご教示よろしくお願い致します。(access2003)

質問者が選んだベストアンサー

  • ベストアンサー
  • m3_maki
  • ベストアンサー率64% (295/459)
回答No.2

VBA は必要ありません。 フォームのプロパティ「ショートカットメニュー」を「いいえ」にしてください。

lokijuh
質問者

お礼

ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • DreamyCat
  • ベストアンサー率56% (295/524)
回答No.1

アクセスでは確認していませんがuserformのことでしたら Button=2が右ボタンです。 Private Sub UserForm_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)  if button=2 then exit sub

lokijuh
質問者

お礼

ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • アクセス 特定のフォームのみ右クリック禁止

    特定のフォームのみ右クリック禁止にすることは可能ですか? vbaでif文を作ればいいのでしょうか?

  • KeyPressイベント

    こんにちは!! KeyPressイベントでBSキーとEnterキーのイベントを取得して、 いろいろな処理を書いているんですけど、 DelキーをBSキーと同じ処理、矢印キーをEnterキーと同じ処理にさせたいです。 それで質問なんですが、KeyPressイベントでDelキーと矢印キーのイベントを 取得する方法ってあるのでしょうか?? KeyDownかKeyUpイベントで取得するしかないのでしょうか?? ご存知の方がいらっしゃったら回答、よろしくお願いいたします。

  • 右クリックイベント

    Windows XP、Access2000での開発で、サブフォーム上のテキストボックスを右リックすると (普通のクリックではなく、あえて右クリック)、 別のフォームが表示される処理を作ろうとしています。 VBAのコードを Private Sub テキストボックス名_mousedown(Button As Integer, Shift As Integer, X As Single, Y As Single)  If Button = acRightButton Then  DoCmd.OpenForm "フォーム名"  End If End Sub としているのですが、これだとマウスを離してしまうと、画面が閉じてしまいます。 普通のクリックでのイベントと同じように、右クリックで別のフォームを表示するにはどうしたらよいでしょうか? 初心者です。 どなたか分かる方教えてください!!

  • あるテキスト入力だけ右クリックを禁止できますか?

    現在、メールアドレスを間違えてユーザ登録しないように、登録フォームで、メールアドレスを2回打ってもらうようになっているのですが、 コピーペーストをする方がいらして、 あまり効果がでていません。ページ全体で右クリックを禁止しているサイトは良く見かけますが、 メールアドレスの入力フォームだけ 右クリックを禁止したいのですが可能でしょうか?

  • MDI親フォームでのキー入力監視

    はじめまして。 VB6.0 SP5で開発を行っております。 子フォームが開いていない状態のMDI親フォームで、F1~F12のファンクションキーを押下したら、それぞれ対応した子フォームが開くようにしたいのですが、MDI親フォームでは、KeyUpやKeyDownのイベントが発生しないため、キー入力監視ができません。 上記のような事を実現させるためには、どのようにすればよろしいのでしょうか。 MDI親フォームには、PictureBoxを貼りその中にボタンを設置して、マウスクリックでも子フォームを開くようにしています。PictureBoxでKeyイベントを取得しようとしましたが、ボタンをクリックして、子フォームを開き、その子フォームを閉じた後(子フォームのUnLoadイベント内で親フォームのPictureBoxにSetFocusしています)、フォーカスがどこかへ行ってしまい、イベントがとれません。 常に、子フォームを開いている状態で、子フォームでKeyイベントを取得するしかないのでしょうか。その場合、子フォームを閉じた時に、別のフォーム(Keyイベント取得用フォーム)を自動的に開く方法はありますでしょうか。 長文となり申し訳ありません。 ご教授の程、よろしくお願い致します。 開発環境  OS:WindowsXP SP3  言語:VisualBasic6.0 SP5

  • タブキー押下時のイベントをひろいたい。

    テキストボックスにフォーカスがあり、TABキーが押された時のイベントをひろいたいのですが、KeyPressもKeyDownもイベントが発生しません。 (If KeyCode = vbKeyTab Then  MsgBox "タブキー" End If  If KeyAscii = vbKeyTab Then ~ のようなコードを記述してもメッセージが表示されない) ヘルプにはKeyDownでは発生しないという記述がありますが、KeyPressではイベントがひろえるようなことが書いてあるのにひろえないので困っています。 なにかよい方法はありませんでしょうか。 わかりにくい説明で申し訳ありませんが困ってます。 宜しくお願いします。

  • アクセス フォーム上で右クリックを無効にしたい

    アクセスで管理システムを作っています。 ユーザーが勝手に編集できないように フォーム上で右クリックを無効にしたいのですが 読み取り専用で開く以外に 何かいい方法はありますでしょうか?(VBAなど?) 宜しくお願い致します。

  • vbで[ctrl]+[tab]を認識させるにはどうしたらよいでしょうか?

    はじめまして、どうしてもうまくいきません。教えてくださいませ。 [ctrl]+[tab]キー入力を認識させるにはどうしたら良いでしょうか? 現在、VBでMDIフォームを使用してプログラムを作っております。 [ctrl]+[tab]キー入力を行なうと、子フォーム間でフォームの移動が起こってしまいます。CommandButton押下時にのみ、フォームの移動を行なうようにしたいので、 [ctrl]+[tab]キー入力を制御して実現させようとしているのですが、うまくいきません。 MSDNライブラリには、KeyUpとKeyDownのイベントで Tabキーの操作は発生しないと書いてありました。。。 何か方法がありましたらお教えいただけると助かります。 どうぞよろしくお願いします。

  • エクセルBVAのフォーム式のKeyCode~の意味がわかりません

    エクセルBVAです Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = vbKeyDown Then KeyCode = 0 End If End Sub ヘルプをみると キーを押したとき、およびキーを離したときに続いて発生します。KeyDown イベントはキーを押すと発生し、KeyUp イベントはキーを離すと発生します。 キーってenterのことですかね? なら、 If KeyCode = vbKeyDown Then KeyCode = 0 End If で、KeyCodeを0ににするってどういうことでしょうか?

  • VBA ユーザーフォームの Keypreview について

    いつもお世話になっています。 VBAのユーザーフォーム上で、KeyDown イベントを使いたいのですが、下のコードが動きませんでした。 Private Sub UserForm_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If e.KeyCode = Keys.z Then MsgBox "効いてるよ!" End If End Sub エラー表示も出ません。 ウェブで調べたところ、VBでは「KeyPreview」プロパティーを「true」にすれば解決するという記事をあちこちで見かけましたが、VBA(Excel2003)のユーザーフォームプロパティには、そのような項目が見当たりません。コード上で無理やり設定してみるとエラーになります。 どのようにすれば解決するでしょうか? お知恵をお貸し下さい。

専門家に質問してみよう