246 votes

Comment puis-je afficher une infobulle au-dessus d'un bouton en utilisant Winforms ?

Comment puis-je afficher une infobulle au-dessus d'un bouton en utilisant Winforms ?

255voto

Dylan Beattie Points 23222

Le ToolTip est en fait un contrôle WinForms qui permet d'afficher des info-bulles pour plusieurs éléments sur un seul formulaire.

Disons que votre bouton s'appelle MonBouton.

  1. Ajouter un contrôle ToolTip (sous Common Common Controls dans la boîte à outils Windows Forms ) à votre formulaire.
  2. Donnez-lui un nom - par exemple, MyToolTip
  3. Définissez la propriété "Tooltip on MyToolTip" de MonBouton (sous Misc dans la grille de propriétés des boutons) sur le texte qui doit apparaître lorsque vous le survolez. la grille de propriétés du bouton) au texte qui doit apparaître lorsque vous le survolez.

L'info-bulle s'affiche automatiquement lorsque le curseur survole le bouton, mais si vous devez l'afficher de manière programmatique, appelez la commande

MyToolTip.Show("Tooltip text goes here", MyButton)

dans votre code pour afficher l'info-bulle, et MyToolTip.Hide(MyButton) pour la faire disparaître à nouveau.

107voto

jmatthias Points 2023

En utilisant le concepteur de formulaires :

  • Faites glisser le contrôle ToolTip de la boîte à outils sur le formulaire.
  • Sélectionnez les propriétés du contrôle sur lequel vous voulez que l'info-bulle apparaisse.
  • Trouvez la propriété 'ToolTip on toolTip1' (le nom peut ne pas être toolTip1 si vous avez changé son nom par défaut).
  • Définissez le texte de la propriété comme étant le texte de l'info-bulle que vous souhaitez afficher.

Vous pouvez également définir l'info-bulle par programme en utilisant l'appel suivant :

this.toolTip1.SetToolTip(this.targetControl, "My Tool Tip");

56voto

DaveK Points 2915

Vous pouvez utiliser la classe ToolTip :

Création d'une info-bulle pour un contrôle

Exemple :

private void Form1_Load(object sender, System.EventArgs e)
{
    System.Windows.Forms.ToolTip ToolTip1 = new System.Windows.Forms.ToolTip();
    ToolTip1.SetToolTip(this.Button1, "Hello");
}

7voto

Timothy Carter Points 7079

Le cadre .NET fournit une classe ToolTip. Ajoutez-en une à votre formulaire, puis, lors de l'événement MouseHover de chaque élément pour lequel vous souhaitez une info-bulle, faites quelque chose comme ce qui suit :

    private void checkBox1_MouseHover(object sender, EventArgs e)
    {
        toolTip1.Show("text", checkBox1);
    }

-4voto

Fry Points 1210

Bien sûr, il suffit de gérer l'événement mousehover et de lui demander d'afficher une info-bulle. t est un tooltip défini soit dans les globales, soit dans le constructeur en utilisant :

ToolTip t = new ToolTip();

puis le gestionnaire d'événements :

private void control_MouseHover(object sender, EventArgs e)
{
  t.Show("Text", (Control)sender);
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X