Hai Plague,
die große Frage: Warum möchtest Du eine Spalte die nicht angezeigt wird?
Deine wahrscheinliche Antwort:
Zitat:
Ich möchte die ID des Datensatzes dort speichern.
Daruf sage ich:
Zitat:
Das ist aber keine gute Lösung
Jetzt Du:
Zitat:
Wie soll ich es denn machen?
Ich wieder:
Zitat:
Schaue dir mal die Eigenschaft .Data von TListItem an.
Du schon wieder:
Zitat:
Wie geht das denn genau?
Ich wühle in meinem Quellcode und poste:
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:
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
Stephan B.
"Lasst den Gänsen ihre Füßchen"