LabVIEWForum.de
Bildlaufleiste - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Bildlaufleiste (/Thread-Bildlaufleiste--32366)



Bildlaufleiste - simcum - 27.08.2020 10:39

Hallo liebe Labviewgemeinde,

ich stehe vor einem kleinen Problem, der mich verzweifeln lässt.

habe ein Hauptcluster bestehend aus mehreren clustern.

je nach Auswahl der Anzahl sollen die einzelnen Cluster innerhalb des Hauptclusters deaktiviert werden.

Das funktioniert auch alles soweit.

Jetzt wollte ich mein Hauptcluster von der größe reduzieren damit die dektivierten cluster nicht mehr sichtbar werden.
Das ganze wollte ich mit einer separaten vertikalen Bildlaufleiste scrollbar machen.

Leider kann ich die Größe (Bereichsbereite) der Bildlaufleite nicht verändern (Eigenschaft für lesen ist ausgegraut)

Es gibt die Eigenschaften Objektrahmenlänge und Seitengröße, darüber habe ich es nicht hinbekommen.

Vielleicht stelle ich mich auch nur dumm an.

Könnt ih mir hierbei behilflich sein?


Bedanke mich

simcum


RE: Bildlaufleiste - jg - 27.08.2020 13:31

Kannst du mal ein Beispiel-VI hochladen, was du gerne machen willst?

Gruß, Jens


RE: Bildlaufleiste - simcum - 27.08.2020 14:03

Hallo Jens,

ich mache es jetzt doch anders mit array aus clustern.

Ziel von mir ist es einen Kanalauswahlfeld in Abhängigkeit der ausgewählten Anzahl an Mustern zu erzeugen.

Das funktioniert soweit auch mit Array aus Clusterelementen.

Mein Problem ist hier nur der Scrollbalken vom Array. dieser lässt sich immer um eins weiter nach rechts schieben.
Kann mann das irgendwie unterbinden?

Hab dazu mal ein Beispiel angehangen.

Bedanke mich

Simcum


RE: Bildlaufleiste - GerdW - 27.08.2020 14:40

Hallo simcum,

mit Events kann man User-Inputs gut abarbeiten und filtern…

Du könntest überwachen, welche Array-Elemente angezeigt werden und notfalls korrigierend eingreifen.
Du könntest einen eigenen Scrollbalken erstellen (anstatt den des Arrays zu verwenden) und hier gleich den Eingabe-Bereich eingrenzen.

Ich persönlich bevorzuge für solche Aufgaben MultiColumnListboxes:
[attachment=61174]
Die Liste zeigt alle Einträge (=Arrayelemente) an. Man kann einzelne auswählen und dann (hier rechts davon) deren Parameter bearbeiten…


RE: Bildlaufleiste - simcum - 27.08.2020 14:47

Hallo Jens,

ok verstehe, dachte es gibt vielleicht einen einfacheren Weg.
Werde es mal versuchen

Danke dir.


RE: Bildlaufleiste - jg - 27.08.2020 14:51

Achso, verstehe, das bekannte leidige Problem, dass man bei einem Array-Control immer weiter scrollen kann, auch wenn man als Programmierer eigentlich weiß, dass die Array-Größe fix ist.

Nein, da gibt es leider nur Workarounds:

Möglichkeit 1: Du machst das "selber" über einen zusätzlichen Scrollbalken, den du unterhalb deines Arrays platzierst.
Möglichkeit 2: Innerhalb einer Eventstruktur kannst du bei einem Value-Change Event des Arrays überprüfen, ob sich die Array-Größe verändert hat. Wenn ja, dann schreibst du wieder den alten Wert in die Anzeige. Nicht wirklich schön, aber funktioniert.
[attachment=61175]
Möglichkeit 3 (mglw. mit Nr. 2): Du pollst den Index-Value des linken oberen Array-Elements (PropertyNode IndexVals). Wenn der zu groß wird, per PropertyNode zurücksetzen.
[attachment=61176]

Gruß, Jens

Edit: Gerd war schneller...


RE: Bildlaufleiste - simcum - 27.08.2020 22:33

Hallo Jens,

danke für die Antworten, werde es ausprobieren.
(27.08.2020 14:47 )simcum schrieb:  Hallo Jens,

ok verstehe, dachte es gibt vielleicht einen einfacheren Weg.
Werde es mal versuchen

Danke dir.

Hallo Gerd,

entschuldige habe dich mit Jens verwechselt