Danke, das war es:
Zitat von
Gollum:
Überprüfe einmal mit ...
ob die entsprechende Zeile überhaupt markiert ist.
War sie nicht, bis ich dann RowSelect:=True; gesetzt hatte. Jetzt klappt es. Ich habe aber immer den Balken blau. Gibt es auch eine Möglichkeit ohne RowSelect?
Dann habe ich mal eine Frage zum Einbinden von Objekten:
Ich habe anhand
dieses Threads herausgefunden, dass man z.B. auch eine TCheckBox einbinden kann. Bei mir klappt das aber nur in der ersten Spalte, wo es die TListView ja schon selbst unterstützt sowie noch in der zweiten Spalte. Wenn ich in dem folgenden Code I durch 1 bzw. 2 ersetze, kommt die CheckBox dann wieder in der 1. Spalte
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
Var
I : Integer;
Bereich : TRect;
CB : TCheckBox;
begin
I:=0;
ListView1.Items.Add.Caption:='Test';
Bereich:=Listview1.Items[Pred(ListView1.Items.Count)].DisplayRect(drBounds);
Bereich.left:=Bereich.Left + Listview1.columns[I].Width;
Bereich.right:=Bereich.Left + Listview1.columns[Succ(I)].Width;
CB:=TCheckBox.Create(self);
CB.Parent:=Listview1;
CB.BoundsRect:=Bereich;
CB.Checked:=True;
Listview1.items[Pred(ListView1.Items.Count)].Data:=CB;
end;
Kann mir bitte da jetzt noch jemand einen Tip geben?
Denn dann müsste ich das nicht mehr - wie geplant - mit den Bildchen (ImageIndex) machen, sondern könnte direkt CheckBoxen in jeder Spalte verwenden...
Gruß, Alex