Discussions au sujet de NI LabVIEW

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

insérer un objet dans une page d'un onglet dynamiquement

Résolu !
Accéder à la solution

bonjour,

 

je travaille sous labview 2011 et je souhaiterais pouvoir ajouter des pages a un onglet de manière dynamique

puis insérer des tableaux ou des tables dans ces pages et tout ceci par programmation suivant le nombre de voie

 

par exemple 6 voies donc 6 pages dans un onglet avec dans chaque page un tableau.

 

Cordialement,

 

0 Compliments
Message 1 sur 8
3 312 Visites

Ajouter des pages à un onglet pendant le runtime n'est pas possible. Tu peux éventuellement en créer un nombre donné et les afficher/masquer en fonction de ton besoin.

Si tu veux quelque chose de réellement dynamique, tu peux essayer ça, par contre ça demande un peu de code (notamment maitrise des lancements dynamiques de VI).

 

Cordialement, 


Olivier Jourdan

Wovalab founder | DQMH Consortium board member | LinkedIn |

Stop writing your LabVIEW code documentation, use Antidoc!
0 Compliments
Message 2 sur 8
3 306 Visites

A mon humble avis, sa risque d'être compliqué car il faut utiliser le scripting, et la méthode pour ajouter des pages n'est accessible qu'en mode édition (ne fonctionne pas avec le run time)

Rodéric L
Certified LabVIEW Architect
0 Compliments
Message 3 sur 8
3 303 Visites

une autre options qui demande aussi un peu plus de travail est d'utiliser un subpanel et un menu déroulant pour le choix du VI à afficher (chaque contenu d'onglet devient un VI).

 

mais la proposition d'Olivier est probablement la plus simple : mettre de base le nb max d'onglet que tu peux avoir et n'afficher que ceux que tu veux lors de l'exécution.

 

juste mon grain de sel


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 4 sur 8
3 289 Visites

Bonjour,

 

et merci pour vos réponses!

 

J'avais pensé à la solution des onglets masqués mais je voulais essayer de faire quelquechose de "plus propre".

 

je vais regarder les solutions proposées.

 

Cordialement,

0 Compliments
Message 5 sur 8
3 281 Visites

Je suis parti sur les onglets inutilisés qui seront masqué.

donc avec le noeud de propriété pages je renvoie le refnum de la page que je veux masquer sur un autre noeud de propriété et la je choisie la propriété page visible

et cela fonctionne en mode exécution.

 

le nouveau problème est que je veux pouvoir modifier le nom des pages lors de l'exécution donc je cable une constante chaine sur la propriété étiquette de la page

 

mais lors de l'exécution labview me renvoie l'erreur -1073 (pas modifiable lors de l'exécution) or dans les caractéristiques de cette propriété, il est noté qu'elle est modifiable en cours d'exécution.

 

Merci!

 

0 Compliments
Message 6 sur 8
3 275 Visites
Solution
Accepté par l'auteur du sujet fred4255

deux choses :

- je ne sais ce qu'est l'étiquette de la page, dans la version original il y a label (qui ne peut pas changer pendant l'exécution) et caption (qui peut changer pendant l'exécution), je te laisse trouver et merci de prouver une fois de plus que les versions traduites de LabVIEW ne sont qu'hérésie!

- il y a une propriété des pages qui s'appelle "Independent Label" qui autorise (ou pas) une page de l'onglet à avoir un caption différent du label, donc pour chaque page, avant de changer le caption il faut s'autoriser à avoir une caption différent du label. cf ci-dessous :

 

tab.png


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

Message 7 sur 8
3 272 Visites

Merci!

 

Effectivement j'avais essayé de modifier le sous titre onglet (la traduction de caption) mais je n'avais pas essayé de le faire en autorisant la propriété étiquette indépendante!

 

en jouant avec les pages visibles et les noms des pages je vais pouvoir avancer!

 

merci encore

0 Compliments
Message 8 sur 8
3 261 Visites