Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Zwischenzeile in ein ListView einfügen (https://www.delphipraxis.net/152711-zwischenzeile-ein-listview-einfuegen.html)

OrNEC 2. Jul 2010 20:19

Zwischenzeile in ein ListView einfügen
 
Suche schon seit einer Stunde wie ich eine Zeile in ein ListView einfügen soll. Nicht einfach am Ende der Liste sonder irgendwo in der Mitte, also im Items[i]

Wer kann mir da helfen?

mkinzler 2. Jul 2010 20:43

AW: Zwischenzeile in ein ListView einfügen
 
Delphi-Quellcode:
ListView.Items[].Insert();

OrNEC 2. Jul 2010 21:28

AW: Zwischenzeile in ein ListView einfügen
 
Zitat:

Zitat von mkinzler (Beitrag 1033166)
Delphi-Quellcode:
ListView.Items[].Insert();

Ne das klappt leider nicht. Nach dem Items[] kann ich kein Insert eingeben.

mkinzler 2. Jul 2010 21:40

AW: Zwischenzeile in ein ListView einfügen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Welche Delphiversion?

Luckie 2. Jul 2010 21:42

AW: Zwischenzeile in ein ListView einfügen
 
Zitat:

Zitat von OrNEC (Beitrag 1033178)
Zitat:

Zitat von mkinzler (Beitrag 1033166)
Delphi-Quellcode:
ListView.Items[].Insert();

Ne das klappt leider nicht. Nach dem Items[] kann ich kein Insert eingeben.

Gut dann lassen wir uns mal herab und bemühen die Forensuche: Hier im Forum suchentlistview insert und gucken und mal ein paar Treffer an. Man könnte eventuell auf Code treffen, der weiter hilft. Alternativ könnte man auch mal die Hilfe bemühen.

OrNEC 2. Jul 2010 22:21

AW: Zwischenzeile in ein ListView einfügen
 
In der Hilfe gibt's dazu nicht, in der Suche auch nicht. :wall:
In delphi-forum auch nix.

mkinzler 2. Jul 2010 22:22

AW: Zwischenzeile in ein ListView einfügen
 
Komisch der Link von Michael leifert bei mir einige Ergebnisse :gruebel:

OrNEC 2. Jul 2010 22:35

AW: Zwischenzeile in ein ListView einfügen
 
Zitat:

Zitat von mkinzler (Beitrag 1033195)
Komisch der Link von Michael leifert bei mir einige Ergebnisse :gruebel:

Ich hab sie schon alle durch geguckt.

Woher kennt ihr dieses Steuerelement so gut? Gibt's vllt irgendwo ein Tutorial dazu? Bei delphi-treff gib's auch nix vernünftiges.

mkinzler 2. Jul 2010 22:38

AW: Zwischenzeile in ein ListView einfügen
 
Nochmal welche Delphiversion?

OrNEC 2. Jul 2010 22:41

AW: Zwischenzeile in ein ListView einfügen
 
Zitat:

Zitat von mkinzler (Beitrag 1033199)
Nochmal welche Delphiversion?

Delphi 2010

mkinzler 2. Jul 2010 22:46

AW: Zwischenzeile in ein ListView einfügen
 
Also bei Delphi 2010 geht es so ( wie du an meinem Screenshot in obigen Beitrag sehen kannst)

OrNEC 2. Jul 2010 22:51

AW: Zwischenzeile in ein ListView einfügen
 
Code:
ListView1.Items.Insert[0]:='ein';
Code:
ListView1.Items.Insert(0):='ein';
Irgendwie gehen beide nicht :cry:

Bin schon seit 20:00 dran :(

mkinzler 2. Jul 2010 22:55

AW: Zwischenzeile in ein ListView einfügen
 
Delphi-Quellcode:
var
   ...
   item: TListItem;
   ...
   item := ListView1.Items.Insert(0);
   item.Caption := 'ein';

OrNEC 2. Jul 2010 22:58

AW: Zwischenzeile in ein ListView einfügen
 
Ach soooooooo ist das :shock:

Aber woher weiß du das? Aus welchem Buch oder welcher HP?

mkinzler 2. Jul 2010 23:00

AW: Zwischenzeile in ein ListView einfügen
 
Steht doch in der Hilfe bzw. der Codevervollständigung ( Methodenfunktion gibt ein TListItem zurück)

OrNEC 2. Jul 2010 23:04

AW: Zwischenzeile in ein ListView einfügen
 
Zitat:

Zitat von mkinzler (Beitrag 1033206)
Steht doch in der Hilfe bzw. der Codevervollständigung ( Methodenfunktion gibt ein TListItem zurück)

In meiner Hilfe steht nur die Beschreibung, sogar ohne Beispiele. :gruebel:

Hab jetzt allerdings einen Fehler entdeckt, egal welche Zahl ich in Insert(hier) eingebe, die ListView wird immer von oben bis nach unten gefüllt. Wieso z.B. nicht in der Zeile 4 wenn Insert(4) ist. Außerdem fülle ich nicht in einer Schleife, das heiß, dass immer wenn ich auf den Button klicke nur die entsprechende Zeile gefüllt werden soll und nicht immer alle Zeilen nach einander.

Oder klarer ausgedruckt wieso wird die erste Zeile gefüllt, wenn Insert(4) ist?

Code:
procedure TForm1.Button2Click(Sender: TObject);
var aItem : TListItem;
begin
   aItem := ListView1.Items.Insert(0);
   aItem.Caption := 'ein';
   aItem.SubItems.Add('11');
   aItem.SubItems.Add('22');
end;

OrNEC 2. Jul 2010 23:14

AW: Zwischenzeile in ein ListView einfügen
 
Ok ich glaube hab das ein bisschen kopiert. Danke euch!

mkinzler 2. Jul 2010 23:14

AW: Zwischenzeile in ein ListView einfügen
 
Liste der Anhänge anzeigen (Anzahl: 2)
Also bei mir funktioniert das
Delphi-Quellcode:
 var item: TListItem;
begin
   ListView1.Items.Insert(1).Caption := 'Drei';
end;

OrNEC 2. Jul 2010 23:18

AW: Zwischenzeile in ein ListView einfügen
 
Aber wenn man auf den Button das zweite mal klickt wird dann die Insert(i+1) gefüllt, obwohl nur die Insert(i) allein immer wieder gefüllt sein muss.

mkinzler 2. Jul 2010 23:23

AW: Zwischenzeile in ein ListView einfügen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Nein, es wird immer an der selben Position eingefügt. Um das zu zeigen, habe ich den Code von oben etwas angepasst
Delphi-Quellcode:
   ListView1.Items.Insert(1).Caption := TimeToStr( Now);

OrNEC 2. Jul 2010 23:26

AW: Zwischenzeile in ein ListView einfügen
 
Ach so, die vorhandenen Zeilen werden einfach nach unten verschoben, jetzt verstehe ich.

Ok danke dir, ich denke jetzt komme ich selber klar. :thumb:

mkinzler 2. Jul 2010 23:28

AW: Zwischenzeile in ein ListView einfügen
 
Insert heisst ja Einfügen. Ersetzen kannst du mit
Delphi-Quellcode:
ListView1.Items.Item[0].Caption := 'Null';


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:40 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