- 01: 名前:けいみん投稿日:2007/03/13(火) 14:29
- C#2005 & Visio2003 でVisioDrawingControl を使用しております。
ショートカットキーを無効にすることは可能でしょうか?
例えば
・F1キーでヘルプ画面を表示させない
・F3キーで塗りつぶしダイアログを表示させない
・F7キーでスペルチェックを行わないetc
とにかくF1〜F12キーで反応しないようにしたいのですが。
知っている方いらっしゃいましたらお願いします。
- 02: 名前:yoda投稿日:2007/03/13(火) 17:14
- keypressイベントかなにかを使うほかないかもしれませんが、
問題は、たとえば、F1を押したとき、ヘルプ画面が表示されるのと、
keypressイベントと、どちらがさきに、検出されるか、ではないかと
思います。VisioSDKの中に、イベントモニターツールがあるので、
それをインストールすると、Visioで発生している、イベントがわかります。
Visioにはそのほかに、マウス右ボタンのコンテキストメニューなどがあ
りますが、これは、たぶん,Enabledプロパティを設定すれば、よいの
ではないかと、思います。
- 03: 名前:けいみん投稿日:2007/03/13(火) 18:15
- yoda様
回答ありがとうございます。
例えばF1キーを押下したときは、
KeyPressイベントやkeyDownイベントが先に発生した後、
ヘルプ画面が表示されることはわかりました。
しかし、ヘルプ画面を表示させないための方法がわかりません。
そんなことできるのでしょうか?
- 04: 名前:yoda投稿日:2007/03/13(火) 20:25
- あるのでしょうか、どうなんでしょうね。
開いていたら、DoCMD関数で強制的に閉じるくらいしか、
思いつきません。Visio2003の場合、VisCMDTaskPaneToggule
ですが、2007の場合、ヘルプがtask paneの中になく、別の
ウインドウになるので、DoCMDでは、だめでしょう。
ほかの方法としては、ショートカットキーを変えてしまうことだと
思いますが、試したわけではないので、よくわかりません。
参考資料「ショートカット キー オブジェクトについて」は、ここに
ありますが、ファンクションキーにも有効かどうか知りません。
- 05: 名前:けいみん投稿日:2007/03/29(木) 14:15
- 自己解決いたしました。
AlertResoponse = 1(or2)にすることで、
F3/F7/F11キーを無効にすることができました。
Visio2003です。
(以前、ページ追加時のダイアログは無効にならなかったのですが…)
- 06: 名前:visGeek投稿日:2007/03/29(木) 22:21
- AccelItemのDeleteではどうでしょうか。
- 07: 名前:けいみん投稿日:2007/03/30(金) 15:53
- 最初はAccelItemでできるもんだと思い、試行錯誤していましたが、
いくらやってもダメでした。
スキル不足だけなのかもしれませんが…。
- 08: 名前:visGeek投稿日:2007/03/30(金) 16:28
- どのようにしたらどのようにダメだったかを書くと
アドバイスが得られるかもしれませんよ。
■トップに戻る リロード 単独スレ表示
|