LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Indice de la propriété "focus clavier" dans un tableau

Solved!
Go to solution

Bonjour,

 

J'ai besoin d'obtenir et de modifier, grâce à une commande, l'indice du focus clavier d'un tableau de cluster.

 

Vous trouverez ci-joint une base.

 

Bonne journée ! 😊

 

 

 

 

0 Kudos
Message 1 of 2
(609 Views)
Solution
Accepted by topic author Naunaut

Je ne pense pas que ce soit possible.

Pour info pour les contrôles de type tableau, il faut différencier entre 2 choses :

 - Le contrôle de l'élément (ici de type "Cluster", héritant de "Control"), instance unique représentant le modèle de tous les éléments affichés dans ce tableau. Il est obtenu via la propriété "Array Element".

 - Les éléments "affichés" qui sont le rendu graphique de tous les éléments visibles du tableau, à partir du contrôle "modèle".

 

Il y a une subtilité de l'objet "Array Element" qui fait qu'il reflète toujours en pratique les propriétés du dernier élément "affiché" qui a subit une modification de valeur de la part de l'utilisateur (une modif programmatique via les propriétés "Value" ou "Value (Signaling)" ne suffit pas).

 

Du coup, il est possible d'obtenir l'index de l'élément qui a le focus via ArrayElement.Value, en recherchant l'élément dans le tableau tout entier. Mais il faut que le tableau ne contiennent que des valeurs uniques pour qu'elles soit différenciables. Pour ce qui est de modifier l'élément qui a le focus, je pense que c'est tout simplement impossible…

A part ça, vous pouvez aussi utiliser les propriétés "Selection Start[]" et "Selection Size[]" (et en faisant clic-droit sur le tableau, Advanced->Show Selection) pour afficher un rectangle autour de l'élément que vous voulez, mais ça ne lui donne pas le focus...

Message 2 of 2
(545 Views)