ShowNotifyWndでメッセージが更新しないNo.01927
cho-bi さん 09/03/05 13:29
 
 すみません。別スレッドでもShowNotifyWnd関数のことが出てきましたので便乗し
て……。

 秀丸メールをタスクトレイに常駐状態、かつ定期受信にして、下記のマクロを「受
信が一段落した時」に登録していると新着メールが有ったときにはメッセージが出ま
す。

loaddll "TKInfo.dll";
#count = dllfunc( "RecvMailCountShow" );
  if ( #count == 0 ){ endmacro; }
$str = str( #count ) + " 通のメールを受信しました。";
#n = dllfunc( "ShowNotifyWnd", "", $str );

 このメッセージに「OK」も「キャンセル」も押さずそのままにしていて、次の定期
受信で新たに新着メールがあった場合、マクロのヘルプによれば「現在表示されてい
るメッセージの上に新しいメッセージが挿入された形で表示されます」とのことです
が、どうもそのままのようで、最初に「1 通のメールを受信しました。」と出たら、
その後にたとえば3通のメールが来ても「1 通のメールを受信しました。」のメッ
セージのままです。
 これは、そういうものなのでしょうか。あるいはマクロが誤ってますでしょうか。

 秀丸メールVer5.16 Beta3 です。

[ ]
RE:01927 ShowNotifyWndでメッセージが更No.01928
秀まるお さん 09/03/05 13:50
 
 通知ウィンドウが表示されてる最中にShowNotifyWndすると、パラメータで指
定したメッセージが追加で表示されます。

 例えば、

    loaddll "TKInfo.dll";
    #n = dllfunc("ShowNotifyWnd","新着の通知", "トライアル2");
    #n = dllfunc("ShowNotifyWnd","新着の通知", "トライアル3");
    #n = dllfunc("ShowNotifyWnd","新着の通知", "トライアル4");

 というマクロを実行すると、

 トライアル4
 トライアル3
 トライアル2

 という内容の通知ウィンドウが表示されます。

 という仕様のはずですが、現状のV5.13β3ではエラーになってうまく動作しま
せん。

 次のV5.13β4ではうまく動作するようにします。

[ ]
RE:01928 ShowNotifyWndでメッセージが更No.01929
cho-bi さん 09/03/05 14:50
 
 さっそくどうもありがとうございました。

> 次のV5.13β4ではうまく動作するようにします。

 よろしくお願いいたします。

 ところで、サンプルのマクロ、

    loaddll "TKInfo.dll";
    #n = dllfunc("ShowNotifyWnd","新着の通知", "トライアル2");
    #n = dllfunc("ShowNotifyWnd","新着の通知", "トライアル3");
    #n = dllfunc("ShowNotifyWnd","新着の通知", "トライアル4");

は、私の環境(WindowsXP Pro SP3)では、どういうわけか、Ver5.16 Beta3 でもうま
く動作していました。

[ ]