C# ToolTip Kullanımı – Nesneler İçin Açıklama

C# ToolTip Kullanımı – Nesneler İçin Açıklama

5 Ocak 2019 0 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 72
Yaklaşık okuma süresi : 7 DK
C# Extension Methods - Genişletme Metodları #1
C# Permütasyon Hesaplama
C# ToolTip Kullanımı – Nesneler İçin Açıklama
5 (100%) 2 Oy

C# ToolTip Kullanımı – Nesneler İçin Açıklama, dersim ile C# Eğitim setime devam ediyorum. Bu dersimde, form üzerindeki nesnelerin üzerine gelindiğinde kısa bir bekleme sonrasında bir baloncuk içerisinde açıklama gösterme işlemini göreceğiz. (113. Ders.)

C# ToolTip Kullanımı – Nesneler İçin Açıklama

Bazen bir butonun yada textbox’un ne işe yaradığını yada bir texbox’a girilmesi gereken verinin biçimi hakkında bilgi vermek için tooltip özelliğini kullanırız. Tooltip özelliğini her nesne için kullanabiliriz.

Şimdi basit bir tooltip oluşturalım ve bir nesneye atayalım. Oluşturduğum forma rastgele birkaç nesne ekledim. listbox, combobox, label, textbox, datetimepicker, checkbox gibi nesneler…

Şimdi ToolTip adında bir nesne oluşturacağız. Bunu da hem normal hemde dinamik olarak nesnelere atamasını yapacağız. Öncelikle tooltip nesnemizin kodlarına bakalım.

        ToolTip Controls_Tooltip(string baslik, string aciklama, Control cntrl)
        {
            ToolTip toolTip = new ToolTip();
            toolTip.Active = true; // Görünsün mü?
            toolTip.ToolTipTitle = baslik; // Çıkacak Mesajın Başlığı
            toolTip.ToolTipIcon = ToolTipIcon.Info; // Çıkacak Mesajda yer alacak ıkon
            toolTip.UseFading = true; // Silinerek kaybolma ve yavaşça görünme
            toolTip.UseAnimation = true; // Animasyonlu açılış
            toolTip.IsBalloon = true; // Baloncuk şekli mi dikdörtgen mi?
            toolTip.ShowAlways = true; // her zaman göster
            toolTip.AutoPopDelay = 3000; // Mesajın açık kalma süresi
            toolTip.ReshowDelay = 3000; // Mause çekildikten kaç ms sonra kaybolsun
            toolTip.InitialDelay = 1000; // Mesajın açılma süresi
            toolTip.BackColor = Color.Red; // arka plan rengi
            toolTip.ForeColor = Color.White; // yazı rengi
            toolTip.SetToolTip(cntrl, aciklama); // Hangi kontrolde görünsün
            return toolTip;
        }

Active = Tooltip mesajı görünsün mü?
ToolTipTitle = Çıkacak Tooltip mesajının başlığı
ToolTipIcon = ToolTipIcon.Info; // Çıkacak Tooltip mesajında yer alacak ikon
UseFading = Tooltip mesajın silinerek kaybolması ve yavaşça görünmesi
UseAnimation = Tooltip mesajının animasyonlu açılışı
IsBalloon = Tooltip mesajı baloncuk şekli mi dikdörtgen mi?
ShowAlways = Tooltip mesajını her zaman göster
AutoPopDelay = 3000;  Tooltip mesajının açık kalma süresi (MS)
ReshowDelay = 3000; Tooltip mesajından mouse çekildikten kaç ms sonra kaybolsun
InitialDelay = 1000;  Tooltip mesajının açılma süresi
SetToolTip (cntrl, aciklama); Tooltip mesajı hangi kontrolde görünsün ve açıklaması ne olsun

İlgili İçerik  C# Form Üzerinde Kısayol Tuş İşlemleri

ToolTip nesnemiz 3 parametre alıyor. İlk olarak Tooltip mesajının başlığı, Tooltip mesajın açıklaması ve Tooltip mesajının hangi kontrolde görüneceğini belirleyen parametrelerdir.

Kullanım şekli aşağıdaki gibidir.

     private void Form1_Load(object sender, EventArgs e)
        {
            Controls_Tooltip("Bu ComboBox'tur", "ComboBox için tooltip tir", comboBox1);
        }

Nasıl göründüğüne bir bakalım.

C# tooltip kullanımı

Gördüğünüz gibi combox’un üzerne geldiğimizde tooltip mesajı çıkıyor. Yukarıda kullanım şeklini gördüğünüz gibi özel olarak tek tek verebilirsiniz. Tüm nesnelerde aynı tooltip mesajı çıksın isterseniz ya da aynı tür nesnelerde ortak tooltip mesajları çıksın isterseniz dinamik olarak nesnelere tooltip mesajları ekleyebiliriz.

 

Şimdi Formumuzdaki tüm nesnelere yukarıdaki görseldeki gibi bir şekilde tooltip çıkmasını sağlayalım.

        private void Form1_Load(object sender, EventArgs e)
        {
            //Controls_Tooltip("Bu ComboBox'tur", "ComboBox için tooltip tir", comboBox1);
            foreach (Control item in this.Controls)
            {
                Controls_Tooltip("Bu " + item.ToString() + " nesnesidir.", "Bu nesnenin adı ise " + item.Name, item);
            }
        }

Bu örnekte listbox nesnesine tooltip mesajı eklenmedi. Sanırım listbox tooltip mesajlarını desteklemiyor. Şimdi yazdığımız işlemin sonuçlarını görelim.

C# tooltip kullanımı 1

C# tooltip kullanımı 2

C# tooltip kullanımı 3

C# tooltip kullanımı 4

C# tooltip kullanımı 5

Yazdığımız döngünün sonucunda aldığımız çıktılar yukarıdaki görsellerde olduğu gibidir. Şimdi sadece TextBox lar için bu tooltip mesajları çıksın istersek ise bir if kontrolü ekliyoruz.

        private void Form1_Load(object sender, EventArgs e)
        {
            //Controls_Tooltip("Bu ComboBox'tur", "ComboBox için tooltip tir", comboBox1);
            foreach (Control item in this.Controls)
            {
                if (item.ToString() == "System.Windows.Forms.TextBox")
                {
                    Controls_Tooltip("Bu " + item.ToString() + " nesnesidir.", "Bu nesnenin adı ise " + item.Name, item);
                }               
            }
        }

BİLGİ: Bir nesneyi ToString() ile convert ederseniz o nesnenin tipini alırsınız. Yukarıdaki görsellerde bunu net bir şekilde görebiliyorsunuz.


C# ToolTip Kullanımı – Nesneler İçin Açıklama, dersimizde bu kadar arkadaşlar. Diğer derslerimizde görüşmek üzere…

Bu derste Github projemde yerini almıştır.

C# Eğitim Seti sayfasına gitmek için tıklayabilirsiniz.

Sağlıcakla ve takipte kalın. 😉

C# Extension Methods - Genişletme Metodları #1
C# Permütasyon Hesaplama