コマンド入力フィールドの使い方

コマンド入力フィールドとはCommand Lists、Key/Mouse、Scheduler、Timersタブのアイテム編集ダイアログに共通な 下図の部分のことを指しています(「コマンド入力フィールド」という名前は勝手に付けました。とりあえずこのサイトではこう呼ぶことにします)。

  図1

既に何度も見ていると思います。これはコマンドを設定する最も重要な場所といっても過言ではないと思います。

さて上図はコマンドを何も設定していないときの状態です。初めてアイテムを作ったときはこうなっているはずです。ちなみに上図の3番のエディットボックスについては 後で説明するので今は特に気にしないで下さい。。

最初に説明しておきますがPowerProのコマンドというのは大きく分けて2種類あります。それはファイルへのパス(ファイルコマンド)Built-in コマンドです。

ファイルへのパスというのは、単にそのファイルを実行する(または関連付けられたプログラムで実行)というコマンドです。ランチャーと同じ機能ですね。

Built-in コマンドはアスタリスク(*)で始まる様々なコマンド集のことです。具体的には*Window 〜や*Menu 〜などがあります。詳しくは Built-in コマンド一覧を参考にしてください。


◆ ファイルを実行

ファイルへのパスをコマンドとして使うときの使い方です。これは特に難しいことなどなく図1の1番のエディットボックスに 実行したいファイルへのパスを入力するだけです。右のボタンからファイルを選択することもできます。図1の2番のドロップダウンでは起動時の状態を選択します。 最大化したりトレイに入れたりを選択できます。あとはそのままの意味です。「Initial folder」というのは作業フォルダのことです。

「Top most」は起動時に常に前面表示にし、「Switch to if active」はそのファイルコマンドを実行したとき既にそのプログラムが動いていたときは そのプログラムをアクティブにするようにします。


◆ Built-in コマンドの場合

少し厄介なのはBuilt-in コマンドを設定する場合です。既にここでBuilt-in コマンドを設定したことある人は知っていると思いますが Built-in コマンドによってここのフィールドが変化します。

例えば図1の状態から1.のドロップダウンリストから*Windowを選択したときは下図のようになります。

  図2

このように選択したコマンドによってフィールドが変化します。この変化の仕方はコマンド、アクションによって違います。そのコマンドに必要な ものだけ入力フィールドが用意されます。コマンドによってはまったく入力する場所がないものもあるかもしれません。

というわけでこのフィールドのパターンは様々です。なので全てを説明することはできません。しかしここで注目して欲しいのはこのフィールドの 間に表示される英語の説明です。例えば図2では「Close」というアクションの下に「Close window.」とありその下には「Select target windows〜」 という英語が表示されています。この文は非常に重要でそのアクションの機能やパラメータの指定方法が書かれています。英語の苦手な人には 厳しいかも知れませんが(ここはリソースをいじっても日本語にできなかったので)とにかくここをよく読んでパラメータを指定してください。

わかりにくいパラメータの指定方法の例を挙げておきたいと思います。特に*Windowコマンドはわかりにくいと思います。

■ *Window Trans コマンド

ウィンドウを透明化するコマンドです。透明にするのだから透明度を指定したいところです。しかしコマンド入力フィールドにはそれらしき入力 フィールドがありません。あるのはターゲットを設定するフィールドだけ?のように見えます。

しかし英文をよく見ると「Enter -255 to 255 before target」と書かれています。つまりターゲットの前に透明度を入力すればいいわけです。 透明度を80としたときは下図のような感じになります。



なんかちょっと変な感じがするかもしれませんが*Window Transコマンドがこのような構文をしているので仕方がないでしょう。このようなパラメータの 指定方法をするコマンドは他にもいくつかあります。



◆ 続けてコマンドを実行する

コマンド入力フィールドにはもう一つわかりにくいものがあります。それは一番下にある「Enter more commands with button or shift-button to browse a file」のエディットボックス(図1の3番)です。

これはこのエディットボックスの上のフィールドに入力されたコマンドが実行された後、さらに別のコマンドを続けて実行したいときにそのコマンドを入力する部分です。 強調しておきますがこのエディットボックスの上に入力されたコマンドとはまったく関係ありません。メインのコマンド入力フィールド(ここの上に あるフィールド)に入力されたコマンドのパラメータなどを入力してもそれはエラーの元になります。

ここに入力されるのは全く別の新しいファイルコマンドまたはBuilt-in コマンドです。ここではいくつもコマンドを指定することができ、 それらは順に実行されます。簡単なスクリプトとして使います。ちなみにこのエディットボックスの横にあるボタンを押すとコマンド入力 ダイアログが表示されいつものコマンド入力フィールドと同じ要領でコマンドを設定できます。

具体的な使い方の例を見てみましょう。ここではメモ帳を起動した後、メモ帳が準備できるまで待ちメモ帳を透明化するということをやってみましょう (普通こんな使い方はしないと思いますが)。この動作をさせるには3つのコマンドが必要です。まず「メモ帳を起動」して「完全に起動し終わるまで待ち」、 「そのウィンドウを透明化」という3つの作業です。メモ帳を起動させた後続けてコマンドを実行したいのですからここに続きを入れればいいのです。

コマンド入力フィールドは下図のようになります。



この図の上のフィールドでは「notepad」を起動していますね。そのあと一番下のエディットボックスに書かれたコマンドを実行します。ここでは 「*Wait ready (改行) *Window Trans! 80 active」と書かれています。*Wait readyはメモ帳が起動して準備できるまで待つコマンドです。メモ帳くらいなら 一瞬で起動できるかもしれませんが中には起動に時間がかかるものがあります。そのようなもののためにここでワンクッション入れているわけです。 メモ帳が起動し終わったらメモ帳を透明化します。(「Trans!」の「!」はError if nosuch windowにチェックを入れてないときに付けられるものです)

このように連続してコマンドを実行したいときにこのエディットボックスを使います。この例のように少しの処理ならここにコマンドを入れてもいいですが、 かなり複雑な処理(If文など)を使うときはスクリプトとしてテキストファイルに書いたほうがいいでしょう。


トップに戻る