枠のレイアウト切替No.00442
ぱと さん 10/04/08 21:10
 
基本的には二枠レイアウトで使っているのですが、フォルダの性格によっては、三
枠区切り状態で使いたいということがあります。

これを簡単に切り替えるだけのマクロを作ろうと思ったのですが、枠のレイアウト
を制御するコマンドは用意されていないようです。

HeaderView  SwitchHeaderView コマンドのようなものが枠のレイアウトについても
存在しているといいなと思いました。

sendmessage で対応可能でしょうか?

----
ぱと

[ ]
RE:00442 枠のレイアウト切替No.00443
Iranoan さん 10/04/08 21:32
 
 ぱとさん今日は、Iranoan です。
> 基本的には二枠レイアウトで使っているのですが、フォルダの性格によっては、三
> 枠区切り状態で使いたいということがあります。
<snip>
> sendmessage で対応可能でしょうか?
動作環境なので、openreg, writeregnum, closereg, EnvChanged() という流
れで作成できると思います。
 って、実際のマクロを書こうと思ったら、tkinfo.chm にそのもののマクロ
があるではありませんか(^^)。
→「EnvChanged, EnvChangedDanger関数(TKInfo.dll)」の項目をご覧下さい。


 それを承知で、関数を要望しているのかもしれませんが。

[ ]
RE:00442 枠のレイアウト切替No.00444
K'zawa さん 10/04/08 21:38
 
ぱとさん、こんにちは。
K'zawaです。

以前作ってマクロライブラリに登録してありますよ。
http://hide.maruo.co.jp/lib/tkmacro/2-3pane.html

[ ]
RE:00443 枠のレイアウト切替No.00445
ぱと さん 10/04/08 22:10
 
Iranoan さん

秀丸メールユーザーのぱとと申します。

> って、実際のマクロを書こうと思ったら、tkinfo.chm にそのもののマクロ
>があるではありませんか(^^)。
>→「EnvChanged, EnvChangedDanger関数(TKInfo.dll)」の項目をご覧下さい。
>
>
> それを承知で、関数を要望しているのかもしれませんが。

おお・・・知りませんでした。なるほど、設定を変更するようなタイプのマクロは、
この手法が定番なわけですね。

ありがとうございました。

----
ぱと

[ ]
RE:00444 枠のレイアウト切替No.00446
ぱと さん 10/04/08 22:12
 
K'zawa さん

秀丸メールユーザーのぱとと申します。

>以前作ってマクロライブラリに登録してありますよ。
>http://hide.maruo.co.jp/lib/tkmacro/2-3pane.html

おおお・・・
既に K'zawa さんが作られてライブラリにあったとは・・・

ありがとうございます。さっそく使わせていただきました。

このマクロが良いお手本になりますので、設定をワンタッチで切り替えるというタ
イプのマクロは、今後このやり方で考えて見ます。

助かりました。

これで、また新機能の画像インライン表示を有効に使うことができます。

----
ぱと

[ ]
RE:00446 枠のレイアウト切替No.00447
K'zawa さん 10/04/08 22:40
 
ぱとさん、こんにちは。
K'zawaです。

手元のやつと比べたら古かったです。
送受信時対策が入ってなかったです。
(そうしないと、よりきつい警告が出る(たぶん))


// 2枠/3枠表示トグル切り替えマクロ

    // 3枠になったときメール内容枠へ 0:移らない 1:移る
    #flag = 1;

    loaddll "tkinfo.dll";
    if ( ! result ) { beep; endmacro; }
    if ( ! dllfunc( "IsHidemaruMailMain" ) ) goto ExitMacro;

    if ( dllfunc( "IsTransmitting" ) ) {
        message "送受信中です";
        goto ExitMacro;
    }

    $RegValue = "pane";
    openreg "CURRENTUSER", "Software\\Hidemaruo\\TuruKame\\Config";
    #p = getregnum( $RegValue );
    if ( #p == 2 ) #p = 3;
    else #p = 2;
    writeregnum $RegValue, #p;
    closereg;
    #n = dllfunc( "EnvChanged" );

    if ( #p == 3 && #flag == 1 ) #n = dllfunc( "SelectPane", 2 );

ExitMacro:
    freedll;

[ ]
RE:00447 枠のレイアウト切替No.00448
ぱと さん 10/04/08 23:12
 
K'zawa さん

秀丸メールユーザーのぱとと申します。

>手元のやつと比べたら古かったです。
>送受信時対策が入ってなかったです。
>(そうしないと、よりきつい警告が出る(たぶん))

わざわざありがとうございます。なるほど、送受信操作時に実行された時の対策な
どが必要になるわけですね。

これまた参考になりました。

----
ぱと


[ ]