Autor Beitrag
dontello
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 60
Erhaltene Danke: 2



BeitragVerfasst: Mo 01.08.11 22:51 
Hallo,

wie ist es möglich in einem ListView eine Zeile an einer beliebigen Stelle zu bearbeiten.

Einfügen am Ende geht ja noch mit: ListView.Items.Add.Subitems.Add('1');

Wie kann ich jetzt z.B. einen Eintrag in der zweiten Zeile editieren und die Inhalte überschreiben.

Habe es mit Insert versucht. Aber da kann ich nur einen Eintrag an der Stelle einfügen und die hinteren Einträge verschiebt es nach hinten.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19341
Erhaltene Danke: 1752

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 01.08.11 23:25 
Wie meinst du das? Du kannst doch den Wert einfach zuweisen, vorausgesetzt er wurde vorher auch hinzugefügt. :gruebel:
ausblenden Delphi-Quelltext
1:
MyListView.Focused.SubItems[0] := 'Ein String';					
dontello Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 60
Erhaltene Danke: 2



BeitragVerfasst: Di 02.08.11 00:38 
Ja,ich versteh nur nicht ganz wie ich da jetzt die Zeile die ich ändern will mit reinbring.
Also Beispiel das LV hat 10 Zeilen und ich möchte nun die Werte in Zeile 2 ändern?
Andreas L.
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1703
Erhaltene Danke: 25

Windows Vista / Windows 10
Delphi 2009 Pro (JVCL, DragDrop, rmKlever, ICS, EmbeddedWB, DEC, Indy)
BeitragVerfasst: Di 02.08.11 09:11 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
var
  Item: TListItem;
begin
  Item := ListView1.Items[1];

  // Überprüfen ob Eintrag existiert
  if Assigned(Item) then
    // Neuen Text setzen
    Item.Caption := 'Dein neuer Text';
end;


Zeile 2 hat den Index 1 weil die Zählung bei 0 beginnt.