LabVIEWForum.de
Pfad-Symbol bei Pfad-Bedienelement; warum bedienbar - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Pfad-Symbol bei Pfad-Bedienelement; warum bedienbar (/Thread-Pfad-Symbol-bei-Pfad-Bedienelement-warum-bedienbar)



Pfad-Symbol bei Pfad-Bedienelement; warum bedienbar - FEL - 25.10.2018 08:29

Hallo Leute,

ich hoffe die Frage ist nicht allzu blöde, aber ich habe ein kleines Verständnisproblem.

Bei Pfadelementen gibt es links ein Pfad-Symbol, welches die Zustände „Gültiger Pfad“ oder „Kein Pfad“ annehmen kann. Ich verstehe nicht, warum das Pfad-Symbol bedienbar ist.

Beispiel: In einem Programm gibt es ein Pfad-Bedienelement nebst Dateidialog-Button. Das Bedienelement hat ein „Value Change“ Ereignis. Der Benutzer wählt nun eine Datei über den Dateidialog aus und das entspr. Ereignis wird ausgelöst (um z.B. die Datei zu prüfen, ob sie gültige Werte enthält). Nun klickt der Benutzer auf das Pfad-Symbol und wählt „Kein Pfad“ aus. Im Bedienelement seht nun „<Kein Pfad>“. Es wird kein „Value Change“ Ereignis ausgelöst, denn der Wert des Elements enthält immer noch die alte Pfadangabe. Es besteht aber nun eine Inkonsistenz zwischen Wert des Elements und der Anzeige, was den Benutzer verwirren kann. Ist dies ein Bug oder ein Feature? Meiner Meinung dürfte das Pfad-Symbol nicht bedienbar sein.

Gibt es eine Möglichkeit das Pfad-Symbol zu entfernen? Im Anpassen-Editor lässt sich das Element nur auf die Größe 1x1 verkleinern (Notlösung). Das Pfad-Bedienelement aus der Palette „System“ hat kein Pfad-Symbol, passt aber nicht zu dem Rest der Elemente des Programms.

Gruß Micha


RE: Pfad-Symbol bei Pfad-Bedienelement; warum bedienbar - GerdW - 25.10.2018 08:43

Hallo Micha,

Zitat:Bei Pfadelementen gibt es links ein Pfad-Symbol, welches die Zustände „Gültiger Pfad“ oder „Kein Pfad“ annehmen kann. Ich verstehe nicht, warum das Pfad-Symbol bedienbar ist.
Weil du ein Control verwendest? Da kann der User nun mal neue Werte vorgeben und alles bedienen…

Zitat:Es wird kein „Value Change“ Ereignis ausgelöst, denn der Wert des Elements enthält immer noch die alte Pfadangabe. Es besteht aber nun eine Inkonsistenz zwischen Wert des Elements und der Anzeige, was den Benutzer verwirren kann. Ist dies ein Bug oder ein Feature?
Das Verhalten konnte ich nachstellen (mit LV2011 & LV2017).
Meiner Meinung nach ein Bug: der Wert eines Controls sollte seiner Anzeige entsprechen.

Zitat:Meiner Meinung dürfte das Pfad-Symbol nicht bedienbar sein.
- Falsch: ein Control soll vollständig bedienbar sein.
- Besser: der Wert des Controls sollte immer seiner Anzeige entsprechen.
- Eine schnelle Möglichkeit, auch mal einen ungültigen Pfad einzustellen, finde ich nicht schlecht.
- Bessere Lösung (IMHO): Es sollte die Möglichkeit bestehen, dieses Symbol unsichtbar zu machen.

Mögliche Lösung für dein Problem:
1. Setze eine Dekoration über diesen Teil des Control, sodass der User dort nicht hinklicken kann.
2. Ersetze das Pfad-Control durch einen Button (mit dem du den Dateidialog aufrufst) und einen Pfad-Indicator.


RE: Pfad-Symbol bei Pfad-Bedienelement; warum bedienbar - Freddy - 25.10.2018 09:15

Hallo Micha,
wenn Du in die Ereignis Struktur noch "Dateipfad-Bedienelement: Maustaste gedrückt" einbindest, bekommst Du ein ElemRef. Damit kannst Du einen Eigenschaftsknoten mit Wert anhängen. Dieser wird dir <kein Pfad> anzeigen.
Jetzt musst Du es nur ausprogrammieren.

Gruß
Freddy


RE: Pfad-Symbol bei Pfad-Bedienelement; warum bedienbar - FEL - 25.10.2018 09:20

Hallo Gerd,

danke für die Infos.

(25.10.2018 08:43 )GerdW schrieb:  Das Verhalten konnte ich nachstellen (mit LV2011 & LV2017).
Meiner Meinung nach ein Bug: der Wert eines Controls sollte seiner Anzeige entsprechen.
Was passiert den bei Dir? Wird das "Change-Value" Ereignis ausgelöst?


(25.10.2018 08:43 )GerdW schrieb:  
Zitat:Meiner Meinung dürfte das Pfad-Symbol nicht bedienbar sein.
- Falsch: ein Control soll vollständig bedienbar sein.
- Besser: der Wert des Controls sollte immer seiner Anzeige entsprechen.
- Eine schnelle Möglichkeit, auch mal einen ungültigen Pfad einzustellen, finde ich nicht schlecht.
- Bessere Lösung (IMHO): Es sollte die Möglichkeit bestehen, dieses Symbol unsichtbar zu machen.
Hast ja recht, ein Control ist ein Control. Aber dam muss es auch richtig funktionieren.
Schade das es keine Möglichkeit gibt, sie unsichtbar zu machen, wie z.B. die Pfeilschaltflächen.


(25.10.2018 08:43 )GerdW schrieb:  Mögliche Lösung für dein Problem:
1. Setze eine Dekoration über diesen Teil des Control, sodass der User dort nicht hinklicken kann.
2. Ersetze das Pfad-Control durch einen Button (mit dem du den Dateidialog aufrufst) und einen Pfad-Indicator.
zu 1.) Dekoration = Gestaltungselement?
zu 2.) Da kann der Benutzer den Pfad nicht mehr per Hand ändern.

Mir ist auch ein Lösung eingefallen: Ich refreshe zyklisch den Wert des Controls, um die Inkosistenz zu beheben.

Gruß Micha


Hallo Freddy,

danke für den Hinweis.

(25.10.2018 09:15 )Freddy schrieb:  wenn Du in die Ereignis Struktur noch "Dateipfad-Bedienelement: Maustaste gedrückt" einbindest, bekommst Du ein ElemRef. Damit kannst Du einen Eigenschaftsknoten mit Wert anhängen. Dieser wird dir <kein Pfad> anzeigen.

Man muss allerdings dabei die Koordinaten auswerten, den der Benutzer kann ja auch in das Control geklickt haben, um den Pfad zu editieren.

Gruß Micha