LabVIEWForum.de - Reihe aus Listbox zur Laufzeit löschen

LabVIEWForum.de

Normale Version: Reihe aus Listbox zur Laufzeit löschen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.

MichaDu

Hallo,

ich verwende eine Listbox als Statusanzeige und möchte aus meiner Applikation eine bestimmte Reihe löschen. Wie kann man das machen? Es gibt hierfür keine Properties, sondern es geht nur "von Hand" über das Control.

Der Hintergrund ist, dass ich die Einträge mit unterschiedlichen Farben hinterlegt habe. Lösche ich einen Eintrag aus meinem DatenArray (Item Names), so stimmen die Zuordnungen zwischen den Einträgen und den Hintergrundfarben nicht mehr.
Man nehme:

Property Item Names (Read)
Delete From Array
Property Item Names (Write)

Dann noch eine Schleife durch alle Cells und Property Background Color neu setzen.

VDB

MichaDu

Hallo VDB,

das mit dem ItemNames-Array habe ich schon so gemacht und die Schleife für das Setzen der BG-Color wollte ich vermeiden, da ich regelmäßig Daten ändere und das evtl die Performance ausbremsen könnte.

Gibt es keine Alternative zur Schleife? Ich dachte an ein entsprechendes BG-Color-Array, das nicht jedesmal neu erstellt werden muss. Oder ist das gar nicht so zeitaufwändig? Habe etwa 500 Listeneinträge.
Nein, Du musst immer den aktiven Cell setzen, bevor Du die Background Farbe ändern kannst. Das Setzen von 500 Items kann locker eine halbe Sekunde dauern. Du kannst das noch optimieren in dem Du die Farbe nur änderst ab die Zelle, die gelöscht wurde. Die vorliegenden Zellen müssen ja nicht geändert werden... Oder vielleicht gibt es noch ein ActiveX oder .NET Control womit so was schneller geht.

VDB
Referenz-URLs