Voici ci-dessous une explication détaillé du code de sperot51 qu'il ma fournit sous MP, car je ne comprenais pas l'ensemble du code.
1 2 3 4 5 6 7 8 9 10 11
|
For Each ctrl As System.Windows.Forms.Control In Me.Controls ' parcours de tous les controles de la fenetre
If Me.ToolTip1.GetToolTip(ctrl) = "" Then Continue For 'si aucun tooltip défini, on passe au suivant
If not typeof ctrl Is Textbox then continue for ' si le controle actuel n'est pas un textbox, on passe au suivant
If ctrl.text <> "" then continue for ' si le texte n'est pas vide on passe au suivant
' tous les autres textbox afficheront le tool tip
Dim t As New ToolTip
t.SetToolTip(ctrl, Me.ToolTip1.GetToolTip(ctrl))
t.Show(Me.ToolTip1.GetToolTip(ctrl), ctrl, 2000) ' 2000 : nombre de millisecondes
Next |
1. Déssiner un tooltip sur votre form (ToolTip1)
Ce ToolTip1 sera utiliser pour affecter le texte à afficher pour chaque controles. A l'aide de la proprité "ToolTip sur ToolTip1".
2. Il vous est possible de personnalisé le New ToolTip
Exemple:
1 2
| t.ToolTipIcon = ToolTipIcon.Warning
t.ToolTipTitle = "Procédure interompue" |
Ou encore sa position par rapport à son controle respectif.
t.Show(Me.ToolTip1.GetToolTip(ctrl), ctrl, y:=15, x:=0, duration:=2000) ' 2000 : nombre de millisecondes
3.Si les controles se trouve dans des conteneurs.
Panel, GrougBox, il faut modifier ceci.
For Each ctrl As System.Windows.Forms.Control In Me.Controls ' parcours de tous les controles de la fenetre
Par exemple remplacer Me.Controls par :
Et pour conclure, je remecie tout ceux qui ont participé à ce post.
Partager