Genelde büyük ölçekli gelişmiş programlarda sağ alt köşedeki taskbar dedigimiz bölümde programın kendine ait bir iconu bulunmaktadır ve bu icona sağ tıkladıgımız zaman bir menü açılır ve buradan işlemlerimizi gerçekleştiririz..
|
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;
namespace FormIconTaskbar { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private NotifyIcon nicon; //icon göstermek için bu iş için tasarlanmış nesnemizi ortaya sürüyoruz.
private ContextMenu cMenu; //şimdi ContextMenu yani sağ tık yaptıgımızda çıkacak olan menüyü ortaya sürüyoruz..
// unutmayınki yukarda bu nesneleri sadece public bir degiseken gibi ortaya sürdüm yani daha türetmedigimden dolayı şuanda ramde yer kaplamayacaktır..
private void Form1_Load(object sender, EventArgs e) { //formun load esnasında yani form yüklenirken..
nicon = new NotifyIcon();//burda ortaya sürdümüzün icon nesnesini yaratıorz nicon.Text = "Programımızın adı olabilir"; // burda iconun üstüne geldigimizde küçük bir baloncukla gözükmesini istediginiz yazı.. nicon.Visible = true;//iconumuzu görünür kılıyoruz. nicon.Icon = new Icon("icon1.ico");//buradaki icon1 projenizin "bin/debug" < klasörü içerisinde icon1.ico die bi dosya olması lasım onu siz ayarlarsınız :) cMenu = new ContextMenu();//buradada sağ tık için vaadde bulundugumuz menu yü yaratıoruz.. cMenu.MenuItems.Add(0, new MenuItem("Göster", new System.EventHandler(Goster_Click)));//menuye eleman ekledik ve click event ini tetikledik cMenu.MenuItems.Add(1, new MenuItem("Gizle", new System.EventHandler(Gizle_Click)));//menuye eleman ekledik ve click event ini tetikledik cMenu.MenuItems.Add(2, new MenuItem("Kapat", new System.EventHandler(Kapat_Click)));//menuye eleman ekledik ve click event ini tetikledik nicon.ContextMenu = cMenu;//burada yaratıtımız menu nesnesini, icon nesnesinin içine gömdük.. bu sayede beraber çalışıcaklar.. sağ tık olayı ;) }
protected void Goster_Click(object sender, System.EventArgs e) { //göster die bir eleman eklemiştik onun click eventi burası ve burda gösterelim.. Show(); }
protected void Gizle_Click(object sender, System.EventArgs e) { //gizle die bir eleman eklemiştik onun click eventi burası ve burda gizleyelim.. Hide(); }
protected void Kapat_Click(object sender, System.EventArgs e) { //kapat die bir eleman eklemiştik onun click eventi burası ve burda kapatalım.. nicon.Dispose();//nicon adındaki NotifyIcon nesnesini ramdan kaldırıyoruz.. This.Close();//üzerinde çalıstıgımız formu kapatmak için.. }
private void Form1_FormClosing(object sender, FormClosingEventArgs e) { //formclosing event i yani form kapanırken calısıcak olan kodlar buraya yazılır buraya form un properties/event ler yerinde bularak çift tıklayıp gidebilirsiniz hani şimşek simgesi olan mekan :)) nicon.Dispose(); } } } |