3

タスクバー アイコンに強制的にバルーン ツールチップを表示させるのは非常に簡単です。Shell_NotifyIcon( NIM_MODIFY, ... ) を呼び出すときに NIF_INFO フラグを設定するだけで、バルーンが表示されます。問題ありません。

今、バルーンが不要になったときにバルーンを非表示にしたいのですが、その方法が見つかりません。NIF_INFO フラグをクリアして Shell_NotifyIcon( NIM_MODIFY, ... ) を呼び出してみましたが、バルーンは残りました。数秒後に自然に消えますが、それは私が望んでいることではありません。プログラムが非表示にする必要があると判断したときに、すぐに非表示にしたいのです。

バルーンを非表示にする唯一の方法は、アイコンを破棄してから再度タスクバーに追加することのようですが、それは醜いです。

タスクバー アイコンを再作成せずにバルーンを非表示にすることはできますか? ありがとう。

4

2 に答える 2

4

バルーンをすぐに非表示にするには、 のszInfoメンバーをNOTIFYICONDATA空の文字列に設定し、nid.szInfo[0] = 0;を呼び出しますShell_NotifyIcon( NIM_MODIFY, &nid )

于 2009-05-24T00:53:37.783 に答える
3

通知バルーンを強制的に削除することは、ユーザーの最善の利益にはなりません。ユーザーが通知をすぐに見ない場合があり、数秒かけてゆっくりとフェードアウトするため、バルーンが消える前に確認する機会が与えられます。使いやすさの観点から、バルーンの表示はアプリケーションの責任である必要がありますが、バルーンの削除は実際にはユーザーの責任である必要があります。そうしないと、彼らが実際に見たいと思っていた情報を隠してしまう可能性があり、強制的に即座に非表示にすることで、バルーンが消えていく間にユーザーが持っていた「最後のチャンス」を完全になくしてしまいます。

于 2009-05-23T23:12:40.110 に答える