Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Ich habe mir eine While-Schleife gebastelt in der auf ein bestimmtes Ereignis gewartet wird.
Es werden zwei Listbox Elemente angezeigt.
Wird in die eine Listbox geklickt wird der entsprechende String in die zweite Listbox übernommen bzw. falls bereits enthalten wieder gelöscht.
Nun soll die While-Schleife ja auch wieder verlassen werden.
Man könnte natürlich dafür einen Button verwenden.
Wie kann ich die While-Schleife verlassen wenn ich mit der Maus die entsprechende Registerkarte verlasse ?
Muß ich hier mit Register Event und Unregister Event arbeiten ?
Also beim "betreten" der Registerkarte muß das Ereignis "Maustaste losgelassen" registriert und beim "verlassen" der Registerkarte muß das Ereignis "Maustaste losgelassen" deregistriert werden ?
Also zwei weitere Ereignisse zum Registrieren und Unregistrieren des ersten Ereignisses definieren ?
Zitat:Warum willst du die While-Schleife, die, so scheit es, die Listboxen bearbeitet, verlassen? Die kannst du ohne weiteres weiterlaufen lassen.
Ja, haha, sehr originell. Irgendwann soll es in der Verarbeitung bzw. im Signalfluß ja auch weitergehen. Ich will mich nicht unendlich lange in der While-Schleife aufhalten. Siehe Anhang. Ich möchte gerne den Button ersetzen.
' schrieb:Ja, haha, sehr originell. Irgendwann soll es in der Verarbeitung bzw. im Signalfluß ja auch weitergehen. Ich will mich nicht unendlich lange in der While-Schleife aufhalten.
Eine EventStruktur in einer While-Schleife widerspricht nicht dem Datenflußprinzip.
Auch in LV gilt: Benutzereingaben, die ja einmalig sind, werden per Event-System verarbeitet. Automatische Abläufe kann man sehr gut mit Statemachine machen. Beide Systeme - Statemachine in While-Schleife und Eventsequenz in einer anderen While-Schleife - müssen nicht zwangsläufig sequenziert werden.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Ersten:
Wenn du bei einem Posting unten links auf "zitieren" klickts und dann ganz unten am Ende aller Eintrage auf "antworten" sind die ausgewählten Zitate vorbesetzt.
' schrieb:Was heisst jetzt hier "einmalig"?
Einmalig heißt: Klick auf Button, oder Beenden der Eingabe einer Zahl mit z.B. Enter. etc. Alles das, was zeitlich gesehen eine Flanke darstellbat ist ("ab jetzt"), gilt als einmalig und kann idealerweise mit einem EventCase gemacht werden. Guckst du auch in der Beschreibung zu LV. Für textbasierte Programmiersprachen gilt hier das selbe.
Zitat:Der Zeitpunkt und die Reihenfolge der Eingaben ist nicht bekannt.
Genau aus diesem Grunde macht man ja ein Event daraus. Ohne Eventgesteuert müsste man pollen - das währe aber Resourcenverschwendung.
Zitat:Was ist jetzt hier "automatisch" ?
Alles das, was ohne Benutzereingriff ablaufen kann. z.B. eine Steuerung eines Prüfablaufes.
Zitat:"Sequenziert" ?
= derart verbunden, dass alles der Reihe nach, also sequenzell, abläuft. Sequenzieren ist das Verb aus dem Hauptwort Sequenz. Demzufolge exestiert es laut Duden.
Sequenzierung ist dann notwendig, wenn abhängige Programmteile programmiert werden. Normalerweise findet eine Seqeunzierung per Error-Cluster statt. Fehlt die Sequenzierung, kann es zu unerwünschen Programmzuständen kommen.
Nachtrag:
Deinen Soucecode von halb neun kann ich mir erst heute abend anschauen.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
' schrieb:Wie kann ich die While-Schleife verlassen wenn ich mit der Maus die entsprechende Registerkarte verlasse ?
Es gibt ein Event "Maus verlässt Bereich". Guckst du, ob das auch für Registerkarten gilt.
Von einem Beenden der While-Schleife (eigentlich: der Möglichkeit der Eingabe) durch ein Ereignis wie "Maus verlässt Registerkarte" würde ich abraten. Ereignisse wie MouseMove, MouseOver etc. sollte man nicht zum Beenden eines Zustandes verwenden. Die Maus ist nämlich schnell mal über den Bildschirm gefahren - nur: dann ist der Zustand abgeschlossen, was der Anwender gar nicht wollte.
Außerdem bleibt es dir überlassen, wie du die While-Schleife beenden willst. z.B. nach 5 Sekunden.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).