C# – System Tray – Uygulamayı görev çubuğunda çalıştırma

18.06.2013
7.384
A+
A-
C# – System Tray – Uygulamayı görev çubuğunda çalıştırma

C#’de system tray yani bildiğimiz  gibi uygulamamızı Windows görev yöneticisindeki arka plan çalışan uygulamaların arasında çalıştırmak. Windows saat göstergesinin hemen yanındaki ikonların arasında olmak için öncelikle 1 adet notifyIcon, 1 adet ise ContextMenuStrip‘i formumuza sürükleyip bırakmamız gerekiyor.

Neyse ki, bu işlem kesinlikle zor değil ben bilmeyenler için daha detaylı anlattım hatta programcılıktan anlamayan birisi bile rahatlıkla yapabileceğini düşünüyorum ama yine de anlamadım, yapamadım gibi sorunlarla karşılaşırsanız mutlaka yorumlardan bana bildiriniz.

Elbette yardımcı olacağım.

 

Yeni proje oluşturuyoruz.

1

notifyIcon’u forma sürükleyip bırakıyoruz.

2

notifyIcon’u taşıdıktan sonra ismi otomatik notifyIcon1 olarak değişecektir. Adını değiştirmeyin.

Her neyse taşıdıktan sonra hemen alt tarafta yer alacaktır işte resimdeki gibi bu bölgede olacak.

3

Kodları belirttiğim yere yapıştırın.

Kodlar:

if (FormWindowState.Minimized == this.WindowState)
{
notifyIcon1.Visible = true;
notifyIcon1.ShowBalloonTip(500);
this.Hide();
}
else if (FormWindowState.Normal == this.WindowState)
{
notifyIcon1.Visible = false;
this.Show();
}

4 5

Şimdi 1 adet ContextMenuStrip’i formumuza sürükle-bırak yaparak taşıyoruz.

Zaten resimlerde de detaylı tarif etmişim 🙂

6

System Tray (görev yöneticisi)nde yer alan uygulamamıza sağ tıkladıktan sonra hangi seçeneklerin 

gelmesini belirtiniz.

7 8

Bu işlem iki çok önemli şey var..  Birincisi ikonumuzu belirmezsek uygulamamız System Tray (görev yönetici uygulamaları arasında) gözükmeyecektir. İkincisi ContextMenuStrip’i belirlemezsek sağ tık -> çıkış yap özellikleri de gözükmez.

9

Eğer .ICO formatlı dosyasnız yoksa..  www.convertico.com‘dan PNG dosyanızı ICO’ya çevirebilirsiniz.

10

İkonumu belirledim. Şimdi uygulamamızı çalıştırıp deneyebiliriz. 

11

 

 

Programımız başarıyla görev yöneticisi uygulamalarının arasına girmiş görülüyor. 

Sağ tık yapıp diğer seçeneklere ulaşılabilir her şey tamam. 🙂

 

12

0.00 avg. rating (0% score) - 0 votes

Yazarı instagram'da takip edin

zdaylan.com yapımı ve güvencesiyle, GrafikBu.com hizmetinize açılmıştır.


Web Tasarım - Blog hizmetleri - E-Ticaret Sitesi - 3D Modelleme - Logo Tasarım - Video Prodüksiyon - Kurumsal Kimlik gibi, daha çok grafik tasarım ağırlıklı ürünlerimize göz atabilirsiniz.

GrafikBu.com'u ziyaret etmek için tıklayın >>

zdaylan
Grafik Tasarım - Beykent Üniversitesi - 1990 doğumlu, grafik tasarım, 3D modelleme, yazılım ve animasyonla ilgilenir. Ayrıca Grafikbu.com'da grafik tasarım hizmetleri verir.
YAZARA AİT TÜM YAZILAR
BİR YORUM YAZIN

This site uses Akismet to reduce spam. Learn how your comment data is processed.

ZİYARETÇİ YORUMLARI - 7 YORUM
  1. Esranur dedi ki:

    Merhabalar.. Ben de yazdığım programı setup haline getirdim fakat veritabanı olarak kullandığım excel dosyası arka planda çalışmaya devam ettiği için formlar arasında geçiş yapıp başka bir veri kaydetmek istediğimde hata veriyor. arka planda çalışan exceli kapatmadan işlem yapmıyor. visual basic dili kullandım programda.. yardımcı olursanız çok sevinirim..

  2. Tiryaki dedi ki:

    Bilgi hazneme yeni bir bilgi eklenmiş oldu ve çokta işimi gördü Teşekkürler. 🙂

  3. özkan dedi ki:

    hocam peki çarpı tuşuna bastığımızda kapanmasını engelleyip, saatin yanında simgesinin çalışmasına devam ettirebilir miyiz?

    1. Tiryaki dedi ki:

      evet ettirebilirsin. Properties bölümünde Windows style ın altında control box var o kısımı false yaparak programı form üzerinde ki çarpıdan kapanmasını küçülmesini ve büyümesini kapatabilirsin.
      Minimize boyuta almak için programın bir köşesine programı gizle butonu koyarak çift tıklayım ‘ this.hide(); ‘ komutu ile programı aşağıya almış gibi gizleyebilir ve saatin bulunduğu yerden programın simgesiyle programı ekrana getirebilirsiniz. Aynı şekilde bir köşesine koyacağınız çıkış butonu ilede programı sonlandırabilirsiniz.

  4. çok teşekkürler. o kadar sitede aradım en sade ve anlaşılır siz anlatmışsınız.

    1. zdaylan dedi ki:

      Rica ederim. İlginiz için teşekkürler 🙂

  5. Muhammet dedi ki:

    Çok teşekkür ederim elinize sağlık