2011-10-25 25 views
5

Bir fare bitti sırasında devre dışı bırakılmış bir metin kutusunda görüntülenecek bir araç ipucu almaya çalışıyorum.C# Engelli metin kutusunda bir araç ipucu görüntüle (Form)

private void textBox5_MouseHover(object sender, EventArgs e) 
{ 
     // My tooltip display code here 
} 

nasıl ipucu devre dışı bırakılmış bir kontrolün üzerinde fare üzerinde gösterilecek alabilirsiniz: Ben kontrolü devre dışı olduğu için şu çalışmaz biliyorum?

Teşekkürler

cevap

16

MouseHover, denetim devre dışı bırakılmışsa, yangın çıkmaz. Bunun yerine size metin kutusu

public Form1() 
    { 
     InitializeComponent(); 
     textBox1.Enabled = false; 
     toolTip.InitialDelay = 0; 
    } 

    private ToolTip toolTip = new ToolTip(); 
    private bool isShown = false; 

    private void Form1_MouseMove(object sender, MouseEventArgs e) 
    { 
     if(textBox1 == this.GetChildAtPoint(e.Location)) 
     { 
      if(!isShown) 
      { 
       toolTip.Show("MyToolTip", this, e.Location); 
       isShown = true; 
      } 
     } 
     else 
     { 
      toolTip.Hide(textBox1); 
      isShown = false; 
     } 
    } 

enter image description here

+0

Çok teşekkür ederim! – tripbrock

+0

Bir başka düşünce - bu, bir grup kutusundaki bir metin kutusuna nasıl uygulanır? – tripbrock

+2

daha sonra groupBox MouseMove Olayı için oturum açmalı ve Form – Stecya

0

Ayrıca form üzerine tasarımcı içinde Toolbox bir araç ipucu nesneyi sürükleyebilir hover olmadığını Formu MouseMove olayı kontrol edebilirsiniz. Ardından, kod içinde SetToolTip() öğesini çağırıp düğme veya metin kutusuna vb. Iletin, araç ipucunun atamasını ve gösterilmesini istediğiniz metni girin.

myToolTip.SetToolTip(myTextBox, "You just hovered over myTextBox!"); 
+2

ile aynı şeyi yapmalısınız. Denetim devre dışı bırakıldığında, bir araç ipucu görmezsiniz. Sorusunun amacı budur. –