|
>(2)のmodeの番号と、メニューでの番号とが全く違うのはなぜでしょうか?
特に意味は無いですが、作っているときに「フォルダ+ファイル一覧」モードを
一番最後に付け足して作ったため、結果的にこうなってしまいました。
>ファイルマネージャ枠をとじるマクロはどのように書けばよいでしょうか。
>sendmessage を使うことになるのかと思いますが、その記述式がわかりません。
マクロヘルプのサンプルにあるものの数値を変えるとできると思います。
0x111の部分は変えてはいけなくて、その次の数値がコマンド値を意味していま
す。
loaddll "HmExplorerPane.dll";
#h=dllfunc("GetWindowHandle",hidemaruhandle(0));
#ret=sendmessage(#h,0x111,254,0); //254=枠を閉じる
endmacro;
>ファイルマネージャ枠が開いているかどうか(フォーカスがあるかどうか)の判別は、
>どのようにすれば可能でしょうか。
開いているかどうかは、
loaddll "HmExplorerPane.dll";
#h=dllfunc("GetWindowHandle",hidemaruhandle(0));
として、#hが0かどうかで判別できると思います。
フォーカスがあるかどうかはうまく判別できませんでした。
getfocusというキーワードもあるのですが、ファイルマネージャ枠からキー割り
当てでマクロ実行したときは自動的に編集エリアに移動してからマクロ実行する
ようになっているのでフォーカスの判別はあまり意味が無い状況です。
理由があってそうしていたのと思うのですが、メニューやツールバーの場合はフ
ォーカス維持したままできるので、キー割り当ての場合もできないか調べてみて、
できそうでれば修正を検討したいと思います。
|
|