![]() |
Listview Spalte ausblenden (visible := false)
Guten Abend,
ich habe mal eine Frage. Ist es möglich, eine Spalte (die erste) auszublenden? Ich möchte, dass die Daten in der Spalte (unsichtbar existieren bzw. über MySQL abgefragt werden). Deshalb sollte die Spalte einfach auf so eine Art visible := false gesetzt werden. Geht das? Wenn ja wie? :gruebel: Danke Thomas |
Re: Listview Spalte ausblenden (visible := false)
Hi!
Vielleicht kannst du ja einfach die Spaltenbreite auf 0 setzen? Ciao fkerber |
Re: Listview Spalte ausblenden (visible := false)
Wäre vielleicht als letzte Variante eine Möglichkeit.
Aber das Ausblenden wäre mir lieber... |
Re: Listview Spalte ausblenden (visible := false)
Habe jetzt mal die Variante mit der Breite = 0 ausprobiert.
Ist nicht möglich. Die mindestbreite liegt bei 50. Aber trotzdem danke für den Tipp... |
Re: Listview Spalte ausblenden (visible := false)
Hi!
Man kann ja auch noch minwidth einstellen. Ist selbst damit nur >50 möglich? (Hab leider keine bessere Idee, ist nur so mal "geraten", sorry) Ciao fkerber |
Re: Listview Spalte ausblenden (visible := false)
Hi,
versuch doch die Listview anders zu füllen. Die Spalten die "unsichtbar" sein sollen einfach ans ende. :wink: Also z.B.... Du hast 2 Sichbare Einträge(Spalten) und einen auf den Du mit einer Komponente oder so zugreifen möchtes. Dann erstellst Du ein LV mit 2 Spalten, belegst aber 3 Spalten. Die 1. Spalte ist die Caption(Sichtbar), die 2. Spalte das SubItem[0](Sichtbar) und die 3. Spalte ist Subitem[1](unsichtbar aber trotzdem da!!!). Du könntest also auch 10 Spalten füllen. Wenn Du nur 3 Spalten im Editor einstellst, sind die restlichen 7 automatisch unsichtbar aber vorhanden. Du kannst also mit SubItems[6] auf den Inhalt der unsichtbaren Spalte zugreifen. :thuimb: Ich mache das auch öfters.. in der letzten Spalte wird zum Beispiel eine Dateiposition abgespeichert um beim click auf selected.Subitems[] zugreifen zu können. CU :hi: |
Re: Listview Spalte ausblenden (visible := false)
Hai Plague,
die große Frage: Warum möchtest Du eine Spalte die nicht angezeigt wird? Deine wahrscheinliche Antwort: Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Delphi-Quellcode:
procedure TFRM_Main.ShowAnreden;
var LI: TListItem; LC: TListColumn; begin with DataModule1.ZReadOnlyQuery1 do begin close; SQL.Text := 'SELECT * FROM anreden ORDER BY anrede'; open; ListView1.Items.BeginUpdate; Listview1.Items.Clear; Listview1.Columns.Clear; LC := ListView1.Columns.Add; LC.Caption := 'Anrede'; LC.Width := 150; LC := ListView1.Columns.Add; LC.Caption := 'Briefanrede'; LC.Width := 250; while not (EOF) do begin LI := Listview1.Items.Add; LI.ImageIndex := 0; ->>> LI.Data := Pointer(FieldByName('id').AsInteger); // ID speichern! LI.Caption := FieldByName('anrede').AsString; LI.SubItems.Add(FieldByName('briefanrede').AsString); Next; end; ListView1.Items.EndUpdate; close; end; end; Und so kommst Du an die ID:
Delphi-Quellcode:
:stupid:
procedure TFRM_Main.ListView1DblClick(Sender: TObject);
var id : Integer; begin id := Integer(ListView1.Items[ListView1.ItemIndex].Data); end; Wenn ich jetzt total daneben gelegen habe war das schöne Gespräch für die Katz :-D |
Re: Listview Spalte ausblenden (visible := false)
@Sharky
Also das Programm kann ohne Probleme erzeugt werden, aber die Spalte (ID) wird immer noch angezeigt. Muss ich eventuell noch eine andere Einstellung treffen? Danke Thomas |
Re: Listview Spalte ausblenden (visible := false)
Zitat:
bei meinem Code gibt es keine Spalte für die ID!! Die ID wird in der Eigenschaft .Data der Zeile gespeichert! |
Re: Listview Spalte ausblenden (visible := false)
Sorry war mein Fehler. Es war schon richtig, ich hab es nur in die Procedure für den falschen Button geschrieben. Jetzt klappt es wunderbar. Danke!!!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz