《Group》
マクロの直接記述
定義名の部分に直接プロパティを指定できます。
キー定義、メニュー定義、ツールバー定義などにおいて
$マクロファイル名,プロシージャ名
と記述すると、指定したマクロファイルのプロシージャが実行されましたが、プロパティ(数値を取得&設定可能なもののみ)の記述も可能になりました。これにより、プロパティに値を設定するだけの場合、マクロを作成しなくても済むようになります。
さらに、メニューやツールバーに割り当てた場合、チェック状態も反映されます。
例
$@@StatusKanjiCode=1
とすると、@@StatusKanjiCode=1 が実行されます。また、これをメニューに定義したときで @@StatusKanjiCode=1 のときは、メニューにチェックマークがつきます。
書式1 $プロパティ
プロパティ = not プロパティ が実行されます。
プロパティが0以外のときチェックされます。
書式2 $プロパティ=数値
プロパティ = 数値 が実行されます。
プロパティが数値と等しいときチェックされます。
書式3 $プロパティ|数値
プロパティ = プロパティ or 数値 が実行されます。
プロパティ and 数値 が数値に等しいときチェックされます。
書式4 $プロパティ^数値
プロパティ = プロパティ xor 数値 が実行されます。
プロパティ and 数値 が数値に等しいときチェックされます。
数値は10進数のみ
また、*マクロ名,プロシージャ名 を後ろに付けると、チェック状態に関しては前述の書式により行われますが、マクロ名,プロシージャ名 が実行されます。
例
$@@MenuIcon^1*QXNEW.MAC,test
(@@MenuIcon and 1)=1 のときチェックされますが、これを実行すると、@@MenuIcon^1 ではなく、QXNEW.MAC,test が実行されます。
設定例は qxnew.qma を参照してください。
メソッド、ステートメントの記述
書式
$*マクロ内容
例
キー定義ファイルにおいて、メニュー定義で、
"test" $*beep
と記述すると、
beep
が実行されます。
実際には
proc main
マクロ内容
end proc
という内容のファイルを作成して実行しています。
メニューにおいて、プロパティによるチェック状態を反映させたいときは
"test" $@@MenuIcon^1**@@MenuIcon=@@MenuIcon xor 1:print @@MenuIcon
のように * が2つ重なります。
この例の場合、(@@MenuIcon and 1)=1 のときチェックされますが、これを実行すると、@@MenuIcon^1 ではなく、@@MenuIcon=@@MenuIcon xor 1:print @@MenuIcon が実行されます。
最新情報 TOP マクロTOP