PDA

View Full Version : سوال: چرا برنامه فقط یک بار به System Tray می‌رود؟



hamedjim
شنبه 14 شهریور 1394, 21:57 عصر
دوستان سلام.

در برنامه ای که مشغول تکمیل کردنش هستم، نیاز دارم وقتی فرم برنامه Minimize میشه، در نوار وظیفه نباشه و به System Tray بره.
به همین منظور یک ApplicationEvents و یک TrayIcon به برنامه اضافه کردم.
این کد رو هم برای رویداد مینمایز شده ApplicationEvents نوشتم:


Hide;
WindowState := wsMinimized;
TrayIcon.Visible := True;
TrayIcon.Animate := True;
TrayIcon.ShowBalloonHint;


و این کد رو هم برای رویداد کلیک روی TrayIcon :


TrayIcon.Visible := False;
Show;
WindowState := wsNormal;
Application.BringToFront();


و انتخاب آیکون رو در رویداد Create فرم قرار دادم.

اما مشکل اینجاست که برنامه تنها یک بار minimize و maximize میشه و برای بار دوم دیگه نمی تونم minimize کنم. کسی میدونه کجای کار رو اشتباه کردم؟!
ممنون میشم راهنمایی کنید.

hamedjim
یک شنبه 15 شهریور 1394, 06:27 صبح
ظاهرا مشکل با اضافه کردن این کد حل شد:



Application.Restore;

این رو در TrayIconClick و قبل از دستور Application.BringToFront اضافه کردم.