ShowBalloonMessage, AddBalloonMessage関数(TKInfo.dll)(Ver7.33対応版)
ShowBalloonMessage関数は、タスクトレーに常駐している秀丸メールのアイコンの上に、いわゆるバルーンメッセージを表示します。
常駐秀丸メールのアイコンが無い場合は、一時的にアイコンだけ表示してバルーンメッセージを表示し、バルーンメッセージが消えた適当なタイミングでアイコンも消します。
この関数は秀丸メール本体ウィンドウ上でのみ実行可能です。
AddBalloonMessage関数は、もしも今現在バルーンメッセージを表示してない状態ならバルーンメッセージを表示し、もしも何か表示中なら、そのメッセージが消えた直後に指定されたメッセージを表示します。AddBalloonMessageを複数回呼び出すと、指定されたメッセージをすべて順番に表示します。
AddBalloonMessageには第3パラメータがあって、そこにコマンドラインの文字列を指定すると、バルーンメッセージをクリックした時にそのコマンドを実行できます。
- パラメータ1(文字列型)
-
バルーンメッセージのタイトルバー文字列を指定します。""を指定すると、秀丸メール標準のタイトルである「秀丸メール」が表示されます。
- パラメータ2(文字列型)
-
バルーンの中のメッセージ内容を指定します。
- パラメータ3(文字列型、AddBalloonMessageのみ)
-
バルーンをクリックして実行するコマンドラインを指定します。例えばメールを開く用に、
"C:\Program files\HidemaruMail\TuruKame.exe" /vf ファイル名 オフセット
みたいなコマンドラインを指定して、クリックして対象メールを表示するような動作が可能です。
- 返り値(数値型)
-
返り値には特に意味はありません。
例 |
#n = dllfunc("ShowBalloonMessage", "新着の通知", "メールが届いてます。");
#n = dllfunc("AddBalloonMessage", "新着の通知", "メールが届いてます。", "notepad.exe");
|
例(何通受信したかのメッセージ表示にアカウント名も表示する例) |
loaddll "tkinfo.dll";
#count = dllfunc("RecvMailCountShow");
if( #count == 0 ) {
endmacro;
}
$list = "";
#i = 0;
while( #i < #count ) {
$account = dllfuncstr("GetLastRecvMailAccount", #i);
if( $account == "" ) {
break;
}
$account = $account + "\n";
if( $account == $accountPrev ) {
//直前のと同じ
} else {
#x = strstr( $list, $account );
if( #x >= 0
&& (#x == 0 || midstr($list, #x-1, 1) == "\n") ) {
//既に追加してある
} else {
$list = $list + $account;
}
$accountPrev = $account;
}
#i = #i + 1;
}
$message = str(#count) + " 通のメールを受信しました。\n" + $list;
#n = dllfunc("ShowBalloonMessage", "", $message);
//#n = dllfunc("ShowNotifyWnd", "", $message);
|
参照:
ShowNotifyWnd関数