Tooltip sur panel

Résolu
DrThrax Messages postés 38 Date d'inscription dimanche 29 janvier 2006 Statut Membre Dernière intervention 17 août 2008 - 17 août 2007 à 16:23
le5ejumeau Messages postés 130 Date d'inscription mardi 11 mars 2003 Statut Membre Dernière intervention 9 juillet 2009 - 20 août 2007 à 20:00
Bonjour,

J'ai besoin de conseils pour un projet, je dessine des point sur un panel (je trace des rectangles de 3*3px) et j'aimerais savoir commennt afficher un tooltip lorsque je survole un de ces points.

Je travaille sur .Net 2.0 VB2005

Merci

6 réponses

anthonygego Messages postés 48 Date d'inscription lundi 1 août 2005 Statut Membre Dernière intervention 10 juillet 2008 1
18 août 2007 à 18:35
Je pense plutôt que ce qu'il cherche à faire est de tester si les coordonnées de la souris sont égales à un des points contenus par la collection mais qu'il sait quel évènement utiliser.

Peut être en faisant un For Each (e étant le MouseEventArgs) :
For Each Pt As Point In TaCollection If e.X Pt.X And e.Y Pt.Y Then
   ToolTip1.SetToolTip(Panel, "Texte")
 End If
Next
Mais ça pourrait ramer fortement... faut voir (si quelqu'un a une autre idée...).
3
le5ejumeau Messages postés 130 Date d'inscription mardi 11 mars 2003 Statut Membre Dernière intervention 9 juillet 2009
17 août 2007 à 23:47
Salut,
Tu peut pas te débrouiller avec l'evenement MouseMove du panel en recupérant les coordonné de la souris avec  le parametre e.

Ensuite suivant les coordonnées de la souris tu changes le tootip en changer le tooltip



Private



Sub
Panel1_MouseMove(

ByVal
sender

As



Object
,

ByVal
e

As
System.Windows.Forms.MouseEventArgs)

Handles
Panel1.MouseMove




If
e.X < Panel1.Width / 2

Then




'ToolTip1.Show("CouCOu", Panel1)





ToolTip1.SetToolTip(Panel1,




"CouCou"
)


Else






'ToolTip1.Show("Salut", Panel1)

ToolTip1.SetToolTip(Panel1,




"Salut"
)


End



If






End



Sub
0
DrThrax Messages postés 38 Date d'inscription dimanche 29 janvier 2006 Statut Membre Dernière intervention 17 août 2008
18 août 2007 à 14:07
Oui mais je dois comparer par rapport à  une collection de point et si il y a un point commun, la il affiche un tooltip.
0
le5ejumeau Messages postés 130 Date d'inscription mardi 11 mars 2003 Statut Membre Dernière intervention 9 juillet 2009
18 août 2007 à 16:08
je vois pas le probleme. 
Tant qu'il n'y a pas de point commun tu n'affiches pas le tooltip (en mettant la chaine de chara a vide :


ToolTip1.SetToolTip(Panel1, "" ) ) et dès qu'il y a un point commun tu affiches le tooltip.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
DrThrax Messages postés 38 Date d'inscription dimanche 29 janvier 2006 Statut Membre Dernière intervention 17 août 2008
19 août 2007 à 13:32
J'ai modifier le code de [auteurdetail.aspx?ID=557790 anthonygego] ainsi:

Private Sub panel1_mousemove(ByVal sender As Object, ByVal e As MouseEventArgs) Handles

Panel1.MouseMove
        'affichage d'un tools tips sur une surface egale à la surface du rectangle de position
        For Each pt As player In players            If e.X (pt.x + 37) And e.Y pt.y + 134 Or e.X = (pt.x + 36) And e.Y = pt.y + 133 Or e.X = (pt.x + 35) And e.Y = pt.y + 132 Or e.X = (pt.x + 34) And e.Y = pt.y + 131 Then
                ToolTip1.SetToolTip(Panel1, pt.nom)
                Exit For
            End If
        Next

    End Sub
0
le5ejumeau Messages postés 130 Date d'inscription mardi 11 mars 2003 Statut Membre Dernière intervention 9 juillet 2009
20 août 2007 à 20:00
Toutes mes escuses alors, je n'avais pas bien compirs la question.

bonne prog'
0
Rejoignez-nous