Bonjour à tous,
Dans un Form en Powershell j'ai plusieurs "Combobox" (11 combobox) avec du texte assez large.
J'ai donc utilisé le Tooltip pour faire afficher le text quand on se déplace à l'intérieur de la liste déroulante.
Voici les deux fonctions que j'appelle pour chacune des listes déroulantes:
Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 ####################################################################################### # listBox Tooltip display large text ####################################################################################### $Draw_listBox_version_Items = [System.Windows.Forms.DrawItemEventHandler] { $aText = $null if (-not $toolTip.Active){$toolTip.Active = $true} try {$Location = $_.Bounds} catch{} # Get Position try {$atext = $this.Items[$_.Index].ToString();}catch{} $Color = "Gray" $_.DrawBackground() $aBrush = new-object Drawing.SolidBrush $color $afont = new-object System.Drawing.Font("Arial",11,[Drawing.FontStyle]'Bold' ) $_.Graphics.DrawString($atext,$this.font,$aBrush,$Location.x,$Location.y) if ($this.SelectedIndex -gt -1 -and $this.SelectedIndex -ne $SelectedIndex) {$SelectedIndex = $this.SelectedIndex $toolTip.Show($aText ,$this ,$Location.Right ,$Location.Bottom,3000) } } ################################# $handler_listBox_Version_SelectedValueChanged= { $SelectedItem.text = $this.SelectedItem $toolTip.Active = $false }
Je rencontre deux problèmes:
1 - la selection active dans la combobox est sur fond bleu (tout à fait normal) mais le text n'est plus en blanc mais en noir. C'est donc illisible est j'ai donc mis le text en gris dans la première fonction.
Y' a t'il un moyen de l'avoir en blanc et dès que l'on a fait une selection il apparaitra en noir dans le champ de la combobox?
2 - tous les tooltip des selections s'affichent en continu lors du déclenchement d'une action demandé par un bouton sur le form. Les tooltip suivent le mouvement de la souris! et disparaitront seulement si je fait un Clear du form avec mon bouton clear...
Ai je oublié quelque chose? faut'il faire un refresh quelconque? le curseur est 'il sortie correctement de chaque combobox? comment stoper cette lecture de tous les combobox en continu?
Merci d'avance pour vos commentaires et vos idées
Meilleures salutations
smooky132
Partager