9
votes

Comment afficher une info-bulle lorsque la mise au point est dans une zone de texte spécifique?

Pour une zone de texte, je souhaite afficher une info-bulle immédiatement lorsque l'accent est mis sur la zone de texte et y restez pendant la durée de la mise au point - non seulement lorsque la souris planant sur la zone de texte.

Entrez la description de l'image ici

Comment puis-je faire ça?


0 commentaires

5 Réponses :


-1
votes

Utilisez un système.windows.forms.tooltip et montrez-le dans la zone de texte gotfocus strong> manche et cachez-le dans lutfocus strong> Evénement:

void textBox_GotFocus(object sender, EventArgs e)
{
    toolTip.Show("your tip", textBox);
}

void textBox_LostFocus(object sender, EventArgs e)
{
    toolTip.Hide(textBox);
}


2 commentaires

Des idées Pourquoi ces événements n'apparaissent pas dans le volet Visual Studio Propriétés lorsque Entrez et Laissez DO?


constructeur public () {txturl.forecolor = color.gray; txturl.gotfocus + = txturl_gotfocus; txturl.lostfocus + = txturl_lostfocus; } Void privé txturl_gotfocus (expéditeur d'objet, eventargs e) {txturl.text = ""; txturl.forecolor = color.black; } Void privé txturl_lostfocus (expéditeur d'objet, eventargs e) {if (string.isnullorwhitepace (txturl.text)) txturl.forecolor = color.gray; }



17
votes

Le Entrez code> et laissez des événements code> sont probablement utiles ici et montrez-le avec une durée de 0 pour le garder là-bas.

private ToolTip tt;

private void textBox1_Enter(object sender, EventArgs e) {
  tt = new ToolTip();
  tt.InitialDelay = 0;
  tt.IsBalloon = true;
  tt.Show(string.Empty, textBox1);
  tt.Show("I need help", textBox1, 0);
}

private void textBox1_Leave(object sender, EventArgs e) {
  tt.Dispose();
}


1 commentaires

Je recommanderais de vérifier si TT est NULL dans l'événement de congé. Il y a peut-être des instances où l'événement Entrée n'est pas déclenché et vous obtiendrez une erreur de référence null sur l'événement de congé.



6
votes

a testé, les noms d'événement:

   private void textbox_Enter(object sender, EventArgs e)
    {
        toolTip1.Show("your tip here", textbox);

    }

    private void textbox_Leave(object sender, EventArgs e)
    {
        toolTip1.Hide(textbox);

    } 


0 commentaires

4
votes

Utilisation de Mouse Hover Code> et Souris Laissez CODE> Événements

    private void textBox1_MouseHover(object sender, EventArgs e)
    {
        toolTip1.Show("your tip here", textBox2);

    }

    private void textBox1_MouseLeave(object sender, EventArgs e)
    {
        toolTip1.Hide(textBox2);
    }


0 commentaires

0
votes

Formulaires Windows xxx


0 commentaires