Discussions au sujet de NI LabVIEW

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

Apparence de la Face-avant d'un VI lancé en asynchrone

Bonjour,

 

Afin d'afficher des pop-up en asynchrone (sans bouton OK), je lance un sous-vi en asynchrone où j'ai mis mon message en face avant.

Le problème c'est que la FA qui s'affiche contient la barre de menu, le bouton démarrer etc. alors que j'ai bien paramétré mon sous-vi pour que la FA s'affiche à la manière d'une boîte de dialogue (propriétés du vi > apparence de la face-avant > boîte de dialogue).

Quelqu'un pourrait-il me dépanner ? merci d'avance...

 

Jean-Luc 

 

0 Compliments
Message 1 sur 10
4 011 Visites

Bonjour,


Si tu vois la barre de menu, c'est certainement que ton VI n'est pas en cours d'exéuction.

Es tu sur de bien lancer l'exécution du sous vi via ton appel dynamique, et pas uniquement faire afficher la face avant ?

 

Vérifie aussi que ton VI ne s'arrête pas prématurément, et que lors de son arrêt la face avant soit fermée.

 

Cdt,

Michael

“En science, la phrase la plus excitante que l'on peut entendre, celle qui annonce des nouvelles découvertes, ce n'est pas "Eureka" mais c'est "drôle"
Isaac ASIMOV
0 Compliments
Message 2 sur 10
4 003 Visites

Merci pour la réponse mais je lance bien mon vi.

Voici la capture de mon vi qui réalise le lancement en asynchrone.

 

 

0 Compliments
Message 3 sur 10
3 996 Visites

D'accord sur ce point là.


Par contre es tu sur que celui-ci est en cours d'exécution lorsque tu fais apparaitre la face avant.

Si la flèche d'exécution est visible et "cliquable" cela veut dire que non.


Deux possibilités :

1- Le vi n'a pas réussi à démarrer -> Cabler les fils d'erreur de ton  lancement dynamique, et récupérer un indicateur témoin d'un démarrage correct.

2- Le vi a bien démarré, mais c'est déjà arrêté -> Vérifier les conditions d'exécution et d'arrêt de ton sous vi.

“En science, la phrase la plus excitante que l'on peut entendre, celle qui annonce des nouvelles découvertes, ce n'est pas "Eureka" mais c'est "drôle"
Isaac ASIMOV
0 Compliments
Message 4 sur 10
3 990 Visites

En addition aux questions de Michael, es-tu en mode développement ou runtime ?

Cette question parce que l'Application Builder permet d'écraser la majorité des propriétés des VIs. Leur apparence en exécutable peut donc différer de celle en mode développement.

0 Compliments
Message 5 sur 10
3 968 Visites

Oui effectivement le vi s'était arrêté de suite car je n'avais pas mis de boucle while dans le vi.

Ceci dit j'ai maintenant d'autres problèmes... Du coup j'ai remis mes messages en apparence de fenêtre classique pour le débuggage.

Voici mon main en PJ. J'appelle donc mon message, puis j'entre dans une boucle while avec un bouton stop, puis je ferme le message.

Mais le problème c'est que ma commande stop est inactive pendant que le message est affiché. Ce n'est que lorsque j'arrête à la main mon message (bouton "arrêter" de la barre d'outils) que l'appui sur "stop" du main est pris en compte.

C'est drôle car j'ai aussi essayé de lancer mon message en asynchrone via "démarrer un appel asynchrone" et là ça fonctionne bien. Je pensais pourtant que le noeud de méthode que j'avais utilisé "Exécuter" avait le même fonction. Ce n'est pas le cas ?

 

Jean-Luc

 

0 Compliments
Message 6 sur 10
3 960 Visites

Autre info : il faut absolument que la fenêtre soit "flottante" et non "modale" (propriétés > Apparence fenêtre)

L'apparence "boîte de dialogue" ne l'est pas ! du coup les commandes de mon "main" ne pouvaient être actives.

0 Compliments
Message 7 sur 10
3 953 Visites

Bonjour,

J'ai du mal à comprendre ta capture d'écran, mais si c'est ce que je pense, je dirais que ta stratégie n'est pas la bonne.

Pourquoi ne pas mettre le bouton d'acquitement /confirmation de lecture de ton message directement dans la fenetre de message ?

 

En pièce jointe, tu trouveras le code que j'utilise pour faire des messages utilisateurs avec les propriétés qui t'intéresse.

Cette fenêtre émet un bip et revient au premier plan toutes les 5 secondes --> Seul moyen pour que les opérateurs arrêtent de me dire "mince j'avais pas vu" .....

 

Tu vois une différence de comportement entre le lancement dynamique et le mode "sous-vi", car en lancement dynamique, ta fenêtre n'est pas considéré comme faisant parti du même thread que ton main, c'est pour cela que le statut "modal" devient transparent.

“En science, la phrase la plus excitante que l'on peut entendre, celle qui annonce des nouvelles découvertes, ce n'est pas "Eureka" mais c'est "drôle"
Isaac ASIMOV
Message 8 sur 10
3 921 Visites

Je rajoute au passage la bibliothèque pour la gestion du passage au premier plan 😉

 

“En science, la phrase la plus excitante que l'on peut entendre, celle qui annonce des nouvelles découvertes, ce n'est pas "Eureka" mais c'est "drôle"
Isaac ASIMOV
0 Compliments
Message 9 sur 10
3 920 Visites

Désolé  pour ma réponse tardive mais merci beaucoup.

En fait je voulais simplement afficher un message permanent sans bouton OK.

C'est dans le cas d'une mise en sécurité. Seule échappatoire dans mon application : tout quitter !

0 Compliments
Message 10 sur 10
3 884 Visites