PDA

View Full Version : سوال: اجراي برنامه با Shift و دابل كليك



sorooshk
پنج شنبه 18 آذر 1389, 21:53 عصر
سلام

تا حالا برنامه Deep Freeze را ديديد؟

وقتي اين برنامه فعال باشه آيكن اين برنامه در قسمت Tray ويندوز ديده ميشه. حالا براي باز كردن برنامه بايد كليد Shift را پايين نگه داريم و روي آيكن برنامه كه در قسمت Tray ويندوز ديده ميشه دابل كليك كنيم.:لبخند:

براي چنين كاري در رويداد DoubleClick شيء NotifyIcon اين عبارت را مي نويسيم:







if (Control.ModifierKeys==Keys.Shift)
{
this.Show();
this.WindowState = FormWindowState.Normal;
}





با اين كار فقط در صورتي برنامه باز مي شود يعني Show مي شود كه كاربركليد Shift را پايين نگه دارد و بر روي آيكن برنامه در Tray ويندوز دابل كليك نمايد.

اميدوارم اين كد به كارتان بيايد.

توضيح: اول كه اين تاپيك را ايجاد كردم يك سوال بود ولي چند دقيقه بعد به نتيجه رسيدم بنابراين شد آموزش:لبخند:

با تشكر از توجه شما.
سروش كريمي

chasbonakam
پنج شنبه 18 آذر 1389, 22:56 عصر
سلام
حالا چه کار کنیم که برنامه تو قسمت TRAY بیاد؟

sorooshk
پنج شنبه 18 آذر 1389, 23:08 عصر
براي به قسمت Tray رفتن برنامه در صورتي كه كاربر فرم را دستي Minimize كند در رويداد Resize فرم كدهاي زير را بنويسيد:





if (this.WindowState == FormWindowState.Minimized)
{
this.Hide();
}



با اين كار وقتي كاربر بر روي دكمه Minimize كليك ميكنه برنامه به Tray ميره.

براي اينكه در هنگام اجراي برنامه،برنامه به صورت خودكار و بدون نياز به كليك كردن Minimize به Tray برود ابتدا در Properties فرمتان مقدار WindowState را برابر Minimized قرار دهيد سپس در Form_Load همان كدي را كه در قسمت Minimize دستي برايتان نوشتم دوباره بنويسيد.

با تشكر از توجه شما.
سروش كريمي

chasbonakam
پنج شنبه 18 آذر 1389, 23:38 عصر
کد رو اجرا کردم ولی فرم کلا غیب شد

نه تو TaskBar اومد و نه تو Tray به نظر شما مشکل از کجاست؟

sorooshk
پنج شنبه 18 آذر 1389, 23:44 عصر
سلام مجدد

عزيزم ميره توي Tray ولي ذكر يك نكته مهم هست. اگر دقت كرده باشي در اولين پست همين تاپيك گفتم كه بايد يك شيء Notify Icon در برنامه ات استفاده بكني. براي اين كار ابتدا از Toolbox برنامه Visual Studio يك NotifyIcon ايجاد بكن سپس حتما يك آيكن به اين NotifyIcon اختصاص بده وگرنه نشون داده نميشه.

همچنين ميتوني براي NotifyIcon يي كه ايجاد كردي مثل NotifyIcon هاي خود ويندوز پيغام خطا و راست كليك و چيزهاي ديگه تعريف بكني.
فقط يادت باشه كه اين NotifyIcon شما حتما بايد يك آيكن داشته باشه تا با اون آيكن در قسمت Tray ديده بشه.