2012-01-12 24 views
2

2つ以上のレベルのメニューを通過する必要があるときにWinMenuSelectItemを使用してメニューオプションを選択する際に問題が発生します。私は現在で働いているAutoIT:複数レベルのメニューからWinMenuSelectItemを使用する際の問題

メニュー項目は、これは設定しています

  • メニューレベル1
  • (アクセスにメニューレベル1の項目をクリックしてください)メニューレベル2
  • (アクセスメニューレベル 2の項目にカーソルを合わせる)メニューレベル3

私はちょうど罰金、この操作を行うにはWinMenuSelectItemを使用することができる午前:

  • メニューレベル1
  • (アクセスにメニューレベル1の項目をクリックしてください)メニューレベル2
  • の項目を選択メニューレベル2

私は、次の操作を実行するためにWinMenuSelectItemを使用することができません:

  • メニューレベル1
  • (アクセスにメニューレベル1の項目をクリックしてください)メニューレベル2
  • (メニューレベル2の項目にカーソルを合わせてアクセス)メニューレベル3
  • メニューレベL 3

EDIT:

私は解決策を見つけました。問題は、WinMenuSelectItemで使用しようとしていたメニューのテキストが正しくないことです。プログラム内でメニューの内容(「ファイルを開く」など)を見ると、必ずしもメニュー項目のテキストではありません。私の場合、テキストは "Open & &ファイル"のようなものでした。

メニュー項目のテキストが何であるかを把握するためには、あなたは2つのことを行うことができます。

a)に複製する操作を記録し、コードを調査するAutoitMacroGenerator(ないAU3Recorder)を使用します。特に、WinMenuSelectItemで何が使用されているかを参照してください。メニューをナビゲートし、そのテキストを検索する機能の対応スイート)を参照して、「GUICtrlMenu」に>インデックス、タイプ -

b)の機能のGUICtrlMenuスイートの周りマック(AutoItでの助けに入ります。

答えて

1

私の場合、テキストは「Open & &ファイル」のようなものでした。

実際には "Open &ファイル"でした。これは、メニューがキーボードから簡単にアクセスできるようになっているためです。 Altキー(メニューを開く)と「f」キーを押すと、「ファイルを開く」を押したかのように動作します。

ここの文字の前のアンパサンドは、好ましいショートカットを示します。これは、同じ文字で始まる複数のメニューを持つことができるためです。例:

Open file 
Open directory 
Exit 

この場合、最初の2つのメニュー項目には両方とも、「開く」のショートカット「o」が付けられています。これは、あなたのアプリケーションをたくさん使い、共通の操作を行うための簡単なショートカットを持つ人にとっては不便です。メニュー項目に異なるショートカットを与えるには、次のように記述します。

Open &file 
Open &directory 
E&xit 

すべてのメニュー項目で同じように動作します。トップレベルのメニューの場合でも。

メモ帳でお試しください! Alt + F(&ファイル)+ x(E & xit)。

関連する問題