Hallo liebe Forum-Mitglieder,
ich habe ein VI mit zwei parallel laufenden While-Schleifen erstellt. Dem Anwender soll es möglich sein, beim Betätigen eines Stop-Buttons das VI sicher zu schließen.
Wenn ich den Programm beenden -Button drücke, passiert jedoch nichts. Die harte "Stop" Funktion bringt nur Fehler im Programm. WIe wäre es sonst noch möglich, das VI auf eine sichere Weise zu schließen?
Vielen Dank für Eure Hilfe!
Tatiana
Hallo Tatiana,
Zitat:Wenn ich den Programm beenden -Button drücke, passiert jedoch nichts.
Das glaube ich nicht: eine der zwei Schleifen sollte beendet werden!
Zitat:Die harte "Stop" Funktion bringt nur Fehler im Programm.
Falls du den "roten Punkt" meinst: den sollte dein User nie zu sehen bekommen!
Zitat:WIe wäre es sonst noch möglich, das VI auf eine sichere Weise zu schließen?
Indem beide Schleifen auf die gleiche STOP-Bedingung hören…
Den roten Punkt meine ich nicht, sondern die Stop-Funktion unter "Application Control".
Wenn ich beide Schleifen abhängig von einer Stop-Bedingung mache, laufen diese doch nicht mehr parallel?!
Hallo Tatiana,
Zitat:Wenn ich beide Schleifen abhängig von einer Stop-Bedingung mache, laufen diese doch nicht mehr parallel?!
Warum nicht?
[
attachment=53846]
Zwei parallel laufende Schleifen, die auf die gleiche STOP-Bedingung reagieren…
Ah ... sowas habe ich noch nicht gesehen. Was ist das in der unteren Schleife für eine Funktion? Unter was finde ich das in meiner Palette?
Hallo tatiana,
ich hatte dich (glaube ich jedenfalls) schon mal auf die LV-Einsteigerkurse bei NI hingewiesen. Etliche davon habe ich in meiner Signatur verlinkt.
Manchmal ist es wirklich hilfreich, sich erstmal die Grundlagen anzutrainieren, bevor man mit einer mächtigen Software anfängt herumzuspielen…
Das ist eine lokale Variable!
Das ist allerdings schwierig, wenn man unter massiven Zeitdruck steht... Ich kann auch schwer lernen, indem ich mich ein gesamtes Tutorial durchlese. Das vergesse ich doch alles wieder
(17.08.2015 12:40 )tatnau schrieb: [ -> ]Den roten Punkt meine ich nicht, sondern die Stop-Funktion unter "Application Control".
Wenn ich beide Schleifen abhängig von einer Stop-Bedingung mache, laufen diese doch nicht mehr parallel?!
Hallo Tatjana,
diese Funktion vergiss mal auch ganz schnell wieder! (Die kannst du in die Kategorie roter Punkt in der Entwicklungsumgebung packen)
Du kannst mit der rechten Maus auf jedem Bedienelement eine lokale Variable erstellen. Diese beinhaltet dan denselben Wert, wie das Bedienelement selbst, wobei man mit Variablen vorsichtig sein muss, da man sich durch die (wenn nicht erzwungen) fehlende Datenabhängigkeit Wettlaufsituationen schaffen kann.
Auf diese Weise kannst du aber mit einem Stopknopf und N Variablen davon auch N+1 Schleifen beenden.
Gruß, Marko