ok, es funktioniert jetzt, allerdings:
- 1. muß ich die Breite noch einmal manuell setzen (column[n].width) da der Wert aus dem Objectinspector nicht übernommen wird
2. alle anderen unsichtbaren Spalten werden auch sichtbar, sobald man die Kopfzeile im ListView in die Breite zieht.
Ich hohle mal etwas weiter aus:
Ich habe ein ListView mit sechs Spalten, wobei einige sichtbar, einige unsichtbar und eines nur bei bedarf sichtbar sein soll
Column.0: immer sichtbar
Column.1: immer sichtbar
Column.2: immer sichtbar
Column.3: immer unsichtbar
Column.4: immer unsichtbar
Column.5: nur bei Bedarf sichtbar, voreingestellt ist unsichtbar
Starte ich das Programm sind nur die drei ersten Spalten sichtbar, alles ok.
Wenn jetzt die fünfte Spalte notwendig ist, mache ich folgendes:
Code: Alles auswählen
ListView1.Items.Item[zeile].SubItems.Add('der notwendige Text');
ListView1.Column[5].Visible:=true;
ListView1.Column[5].Width:=70;
Selbst wenn ich anschließend die die Spalten 3 und 4 definiert unsichtbar mache,
Code: Alles auswählen
ListView1.Column[3].Visible:=false;
ListView1.Column[4].Visible:=false;
kann ich sie in der Kopfzeile wieder aufziehen
Darf vielleicht zwischen sichtbaren Spalten keine unsichtbaren sein, sprich müssen die immer unsichtbaren am Ende des ListView sein??
