INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Unverständliches Verhalten der Ereignisstruktur



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!

09.06.2008, 16:00
Beitrag #1

MadMarv Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2008

8.5
-
de

52351
Deutschland
Unverständliches Verhalten der Ereignisstruktur
Hallo!

Ist das ein Bug oder versteh ich gerade was total falsch? Ich habe eine Ereignisstruktur mit dem Ereignis Maustaste gedrückt. Man sollte ja dann annehmen, dass er in den Case reinspringt wenn der zugehörige button gedrückt wird. In meinem einfachen Beispiel ist eine LED mit dem Button verbunden und soll so anzeigen, dass LabVIEW in den Case gesprungen ist. Der Button bleibt jedoch meistens auf False und nur ganz selten springt er um auf True. Geht man in den Debug-Modus klappt es häufiger. Kann mir das jemand erklären?


LV 8.5

Gruß Marv


Angehängte Datei(en)
Sonstige .vi  Maustaste_gedr_ckt.vi (Größe: 11,85 KB / Downloads: 209)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
09.06.2008, 16:50
Beitrag #2

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.689
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Unverständliches Verhalten der Ereignisstruktur
' schrieb:Der Button bleibt jedoch meistens auf False und nur ganz selten springt er um auf True.
Nur weil du die Maustaste drückst, heißt das noch lange nicht, dass sich der Wert des Bedienelementes ändert.

Sobald du die Maus drückst - links oder rechts - wird das Event ausgelöst. So wie du wolltest. Der Button wird erst nach einer bestimmten Zeit nach Drücken der Maustaste "angeklickt".

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.06.2008, 18:38
Beitrag #3

MadMarv Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2008

8.5
-
de

52351
Deutschland
Unverständliches Verhalten der Ereignisstruktur
Kann ich eigentlich nicht so ganz nachvollziehen. Das Ereignis ist ja schon auf die Schaltfläche bezogen. Und wie erklährst Du Dir das veränderte Verhalten im Debugging Modus? Es kann ja eigentlich nicht sinn der Sache sein, dass ein Ereignis zufällig und unvorhersehbar geschieht. Und es hängt meines Erachtens nicht davon ab wie lange ich auf den Button klicke. Naja.. wenn das so sein soll ^^
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.06.2008, 19:10
Beitrag #4

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.689
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Unverständliches Verhalten der Ereignisstruktur
' schrieb:Das Ereignis ist ja schon auf die Schaltfläche bezogen.
Stimmt. Das Ereignis heißt aber MouseDown, und nicht ValueChanged.

Zitat:Und wie erklährst Du Dir das veränderte Verhalten im Debugging Modus?
Mit deinem langsamen Rechner? Möglichlicherweise auch mit deinem Betriebssystem? Auf meinem kommt da nur false raus - und nicht ab und zu true.

Zitat:Es kann ja eigentlich nicht sinn der Sache sein, dass ein Ereignis zufällig und unvorhersehbar geschieht.
Welches Ereignis ist zufällig und unvorhersehbar? Das Ereignis heißt noch immer MouseDown - und nicht ValueChanged! Und sooft du MouseDown machst - ob links oder rechts - das Event wird immer ausgeführt.

Zitat:Und es hängt meines Erachtens nicht davon ab wie lange ich auf den Button klicke.
Was hängt von der Längeb des Klickens ab? Das Setzen des Bits? Das spielt aber für das Ereignis MouseDown gar keine Rolle.

Wenn du siehst, dass der Button gedrückt ist, also true, ist das Event - im Normalfall - schon ewig abgearbeitet.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.06.2008, 19:11 (Dieser Beitrag wurde zuletzt bearbeitet: 09.06.2008 19:13 von Lucki.)
Beitrag #5

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Unverständliches Verhalten der Ereignisstruktur
' schrieb:Kann ich eigentlich nicht so ganz nachvollziehen.
Man kann das sicher erklären, und IchSelbst liegt meiner Meinung nach richtig. Aber alle Erklärungen wären hier doch nur von rein schöngeistigem Interesse. Für Dich ist erst mal wichtig zu wissen, daß in 95% aller dieser Anwendungeen das Event "Wertänderung" das Passende ist und nicht irgendwelche Maustasten-Events. Wenn Du dann noch das passende Schaltverhalten wählst, dann dürften keine Wünsche mehr offen sein.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.06.2008, 21:23
Beitrag #6

MadMarv Offline
LVF-Neueinsteiger


Beiträge: 3
Registriert seit: May 2008

8.5
-
de

52351
Deutschland
Unverständliches Verhalten der Ereignisstruktur
Ok! Danke für Eure Antworten. War auch mehr Interessehalber. Kann auch sein, dass es an meinem langsamen Firmen-Laptop liegt, aber das unvorhersehbare Verhalten fand ich einfach komisch.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.06.2008, 07:20
Beitrag #7

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Unverständliches Verhalten der Ereignisstruktur
' schrieb:Ok! Danke für Eure Antworten. War auch mehr Interessehalber. Kann auch sein, dass es an meinem langsamen Firmen-Laptop liegt, aber das unvorhersehbare Verhalten fand ich einfach komisch.

Ist nicht unvorhersehbar sondern einfach nicht eindeutig festgelegt. MouseDown wird generiert im Moment wo Du mit der Mouse über dem Kontroll bist UND Du auf die Maustaste drückst. Dabei ist der Status des Kontrolls (True/False) völlig unwichtig. Das könnte noch True sein von der vorigen Aktiviering, sicher wenn der Rechner langsamer ist.

MouseDown/Up sind einfach sehr direkte Events. ValueChanged ist ein viel zuverlässiger Indikator dass etwas passiert ist da zur Auswertung davon sowohl das eingestellte Verhalten des Kontrolls (Latched, usw) als auch entsprechende interne Logik verwendet wird um zu garantieren dass das Kontroll wirklich den neuen Wert hat im Moment wo das Event generiert wird.

Rolf Kalbermatter

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  SubVI´s in EXE verhalten sich falsch KapDruck 6 14.355 14.12.2007 21:11
Letzter Beitrag: KapDruck

Gehe zu: