秀丸メール本体側からの「アドレス帳のメNo.00083
courage さん 07/02/12 17:02
 
秀丸メール本体側からも
「アドレス帳のメニュー」(宛先部分で入力補助メニューコマンドAlt+↓を実行した
ときに表示されるメニュー)を、
表示することはできないでしょうか?

例えば、秀丸メール本体側のツールバーから「アドレス帳のメニュー」コマンドを選
択すると、メニューが表示され、
その表示されたメニューから宛先を選択すると、
選択された宛先が入力された新規メールウィンドウが立ち上がるという風になれば
便利だと思いました。

[ ]
RE:00083 秀丸メール本体側からの「アドレNo.00085
秀まるお さん 07/02/13 09:21
 
 メニューの中のコマンドの数はあんまり多すぎても良くないと思うし、また、
どういう機能なのか分かりにくいコマンドを入れるのもあんまりよくないと思い
ます。

 しいて、courage様が、その「秀丸メール本体上でアドレス帳のメニューを表
示させて…」って操作を個人的に使いたいということであれば、それなりの、例
えばマクロの関数を用意するとかって対応ならしてもいいですけど。

[ ]
RE:00085 秀丸メール本体側からの「アドレNo.00095
courage さん 07/02/13 23:10
 
ありがとうございます。
もし、可能であればマクロの関数をお願いします。
現在は以下のようなマクロを作成して、ツールバーから宛先を選択しています。
(このマクロの場合はグループを階層的に選択することができません。)

loaddll "tkinfo.dll" ;

$to = dllfuncstr("ExtractBookGroup", "Group()", 1 ) ;
if( $to == "" )
{
 endmacro ;
}

while( 1 )
{
 $s = dllfuncstr("GetEmailList", $to, #max_num ) ;
 if( $s == "" )
 {
  break ;
 }
 $str[#max_num] = $s ;
 #max_num = #max_num + 1 ;
}

mousemenuarray $str, #max_num ;
if( !result )
{
 endmacro ;
}

#num = result - 1 ;

#n = dllfunc( "NewMail" ) ;
$s = dllfuncstr( "SetHeader", "To", $str[#num] ) ;

endmacro ;

[ ]
RE:00095 秀丸メール本体側からの「アドレNo.00097
秀まるお さん 07/02/14 12:49
 
 アドレス帳の階層メニューを表示させたいってことのようなので、そういう関
数を用意します。

    loaddll "tkinfo.dll";
    $s = dllfuncstr("BookMenu");
    message $s;

 ってことで。メニューの出てくる位置はウィンドウの左上の方の固定位置にな
ります。

[ ]
RE:00097 秀丸メール本体側からの「アドレNo.00105
courage さん 07/02/14 22:20
 
ありがとうございます。
よろしくお願いします。

[ ]
RE:00097 秀丸メール本体側からの「アドレNo.00112
courage さん 07/02/16 21:23
 
早速BookMenu関数を追加して頂き、ありがとうございます。
これで、秀丸メール本体側から自由に宛先を選べるようになりました。

1つだけBookMenu関数について要望があります。
メニューが表示されているときに、
メニュー以外の部分をクリックすると、
「マクロの実行を中断しますか?」のダイアログが表示されますが、
このダイアログを表示せずに、
空文字列""を返すようにはならないでしょうか?

よろしくお願いします。

[ ]
RE:00112 秀丸メール本体側からの「アドレNo.00113
秀まるお さん 07/02/16 23:25
 
 テストありがとうございます。

 その、メニュー以外の部分をクリックしてマクロが中断しようとするのはバグ
だと思います。なんとか修正させていただきます。

[ ]