clubberzZ
Messages postés89Date d'inscriptionvendredi 29 octobre 2004StatutMembreDernière intervention 3 décembre 2007
-
11 juin 2007 à 17:23
cs_niky
Messages postés168Date d'inscriptionjeudi 28 juin 2001StatutMembreDernière intervention18 octobre 2008
-
12 juin 2007 à 15:46
Bonjour à tous,
Etant encore débutant, je cherche un moyen de pouvoir faire la même chose que le screenshot ci dessous :
Quand par exemple le pointeur de la souris passe sur le checkbox "Fichiers d'aide" la description correspondante s'affiche dans un groupBox et non le tooltip d'origine!
Auriez-vous une solution, un exemple à me présenter? Merci
cs_niky
Messages postés168Date d'inscriptionjeudi 28 juin 2001StatutMembreDernière intervention18 octobre 20087 11 juin 2007 à 17:38
Salut,
En supposant que tu disposes d'un TreeView nommé "treeView1" et un Label nommé "label1" dans lequel s'affiche la description. Le code suivant devrait te permettre d'arriver à faire ce que tu veux :
// Dans l'événement MouseMove du TreeView...
private void treeView1_MouseMove(object sender, MouseEventArgs e)
{
// ...On demande au TreeView de nous donner l'élément sous la souris...
TreeViewHitTestInfo info = this.treeView1.HitTest(e.X, e.Y);
if (info.Node != null) // ... s'il y a un élément sous la souris...
{
// ...On affiche sa description dans le label
this.label1.Text = info.Node.ToolTipText;
}
else // ... si la souris ne survole aucun élément...
{
// ... on affiche un message par défaut
this.label1.Text = "Rien à afficher !";
}
}
cs_niky
Messages postés168Date d'inscriptionjeudi 28 juin 2001StatutMembreDernière intervention18 octobre 20087 12 juin 2007 à 15:46
Elle s'ajoute "toute seule" lorsque, dans le concepteur de forms, tu vas dans la fenêtre Propriétés et que tu sélectionnes le bouton Evénements (symbolisé par un éclair).
Sinon, il faut effectivement le faire manuellement.
clubberzZ
Messages postés89Date d'inscriptionvendredi 29 octobre 2004StatutMembreDernière intervention 3 décembre 20071 11 juin 2007 à 18:03
Merci pour ta réponse c'est précisement se que je recherche oui, mais jai un petit soucis, même sans se code le tooltip que j'affecte à un checkbox racine ou enfant dans mon treeView1 ne s'affiche pas une fois le pointeur de la souris dessus, j'ai essayé sur dautres contrôles et la le tooltip marche... Une idée?
D'autre part si le texte de mon tooltip est trop long comment faire pour l'afficher sur deux lignes dans le "label1"? Merci beaucoup!
cs_niky
Messages postés168Date d'inscriptionjeudi 28 juin 2001StatutMembreDernière intervention18 octobre 20087 11 juin 2007 à 18:17
Pour que les TreeView (comme les ListView d'ailleurs) affiche le ToolTip de leurs éléments il faut mettre à true la propriété ShowNodeToolTips du TreeView.
Enfin, pour afficher plusieurs lignes dans un Label, il faut mettre à false sa propriété AutoSize. Tu peux alors le redimensionner à une taille suffisamment importante pour contenir n'importe laquelle des descriptions.
Si ça ne suffit pas, tu peux remplacer le Label par une TextBox (les TextBox supportent les barres de défilement).
Vous n’avez pas trouvé la réponse que vous recherchez ?
clubberzZ
Messages postés89Date d'inscriptionvendredi 29 octobre 2004StatutMembreDernière intervention 3 décembre 20071 11 juin 2007 à 18:29
Merci beaucoup pour tes renseignements si précieux à ma compréhension!
Après avoir testé si le tooltip marchais sans l'évenement MouseMove (il marche), j'ai remis le code mais rien ne s'affiche dans le label1 et le tooltip apparaîssent toujours sur les checkBox... J'ai bien un treeView1 et un label1 pourtant, j'ai sans doute oublié quelque chose...