タスクトレイのアイコンについて


とろろ  2004-10-06 01:43:18  No: 11281

WindowsXPにC++Builder5の開発環境では、ありますが、質問させてください。^^;
タスクトレイへのアイコンの登録の仕方、タスクトレイでのイベント処理は、以下のページを参照し、実装することができました。

http://www.borland.co.jp/tips/cbuilder/cb008/index.html

ただ、終了した場合、タスクトレイにアイコンが残ってしまい、マウスでポイントしにいくと、消えてくれます。

普通(?)のプログラムのように終了させるときちんとタスクトレイからアイコンが消えるようにしたいのですが、どのようにしたらうまくいくでしょうか?

どうじょ、よろしくお願い致します。


jok  2004-10-06 02:04:42  No: 11282

> メインフォームのOnCloseイベントに下記の内容を記述します。 

のところをちゃんとやっていますか?


とろろ  2004-10-06 02:27:02  No: 11283

OnCloseイベントには、ちゃんと以下のように書いてます。^^;
/------------------------------------------------------
NOTIFYICONDATA  icn;
          
          icn.cbSize = sizeof(NOTIFYICONDATA);
          icn.hWnd = Handle;
          icn.uID = 100;
          icn.uFlags = 0;
          Shell_NotifyIcon( NIM_DELETE, &icn );
/---------------------------------------------------------


jok  2004-10-06 02:37:28  No: 11284

>OnCloseイベントには、ちゃんと以下のように書いてます。^^;

そうですか。同じことをDelphi6でやるとちゃんと消えますけど。
そして最後の Shell_NotifyIcon( NIM_DELETE, &icn ); をコメントアウトする
と、ご指摘のようになります。Button1 の OnClick イベントで同じコードを
試してみてください。


にしの  2004-10-06 02:39:36  No: 11285

uIDを変更したりしてませんよね?
登録したときと同じIDを入れる必要があると思います。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加