Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi listview ??? (https://www.delphipraxis.net/43739-listview.html)

Bernd29bln 7. Apr 2005 23:52


listview ???
 
Hallo!

Ich hab folgendes Problem, wen ich auf meinem button klicke sollen alle caption einträge der listview in den subitems die id3tag angezeigt werden . problem er zeigt nur eine und nicht an der richtigen stelle.

Delphi-Quellcode:
procedure TMainForm.Button2Click(Sender: TObject);
var
eintrag : TListItem;
begin
        if PlayIndex < Listview1.Items.Count then
     mp3Tag1.LoadTagFromFile(listview1.Items[playindex].Caption);
        eintrag := ListView1.Items.Add;
        eintrag.SubItems.Add(MP3Tag1.Title);
        eintrag.SubItems.Add(MP3Tag1.Artist);
        eintrag.SubItems.Add(MP3Tag1.Album);
        eintrag.SubItems.Add(mp3tag1.Year);
        eintrag.SubItems.Add(mp3tag1.Genre);
end;
gruss

marabu 8. Apr 2005 06:22

Re: listview ???
 
Zitat:

Zitat von Bernd29bln
Ich hab folgendes Problem, wen ich auf meinem button klicke sollen alle caption einträge der listview in den subitems die id3tag angezeigt werden . problem er zeigt nur eine und nicht an der richtigen stelle.

Ich habe deinen Code ein weinig abgeändert.
Delphi-Quellcode:
procedure TMainForm.Button2Click(Sender: TObject);
var
  eintrag: TListItem;
  i: integer;
begin
  for i := 0 to ListView1.Items.Count - 1 do begin
    mp3Tag1.LoadTagFromFile(listview1.Items[i].Caption);
    eintrag := ListView1.Items.Add;
    eintrag.SubItems.Add(MP3Tag1.Title);
  end;
end;

Bernd29bln 8. Apr 2005 09:26

Re: listview ???
 
Danke für die Hilfe. Ich habe aber immer noch das Problem ,wenn zeile 1 bis 3 in der Caption stehen schreibt er die id3tag´s ab zeile 4 .
Versteh ich nicht. :gruebel:


MfG Bernd

leddl 8. Apr 2005 09:39

Re: listview ???
 
Ist ja auch kein Wunder, du fügst ja auch durch "ListView1.Items.Add" eine neue Zeile hinzu. Wo soll die hin, wenn nicht ans Ende? :gruebel:
Wie wärs damit?
Delphi-Quellcode:
procedure TMainForm.Button2Click(Sender: TObject);
var
i : Integer;
begin
  for i := 0 To ListView1.Items.Count - 1 Do
  Begin
     mp3Tag1.LoadTagFromFile(listview1.Items[i].Caption);
     With ListView1.Items[i] Do
     Begin
        SubItems.Add(MP3Tag1.Title);
        SubItems.Add(MP3Tag1.Artist);
        SubItems.Add(MP3Tag1.Album);
        SubItems.Add(mp3tag1.Year);
        SubItems.Add(mp3tag1.Genre);
     end;
  end;
end;

Bernd29bln 8. Apr 2005 09:41

Re: listview ???
 
AHA Verstehe. :wall:

Bernd29bln 8. Apr 2005 09:43

Re: listview ???
 
Naja wenn ich sie entferne bekomme ich ne zugriffsverletzung .

MfG

Bernd29bln 8. Apr 2005 10:13

Re: listview ???
 
Klasse Funktioniert danke leddl :thumb:

MfG

leddl 8. Apr 2005 10:15

Re: listview ???
 
Ja, weil du "eintrag" nicht gesetzt hast. Machs mal so, wie ichs im meinem Post noch editiert hab. Der Quellcode sollte eigentlich funktionieren. Falls nich, meld dich, habs nämlich nich getestet.

Bernd29bln 8. Apr 2005 10:17

Re: listview ???
 
Ne Ne dein post ist super geht einwandfrei . :thumb:

MfG

leddl 8. Apr 2005 10:22

Re: listview ???
 
Na das is mal lustig. Manchmal muß ich meine Posts mehrmals editieren, weil ich ständig mitgeteilt bekomme, daß neue Posts da sind, und in dem Thread hab ich gleich 2mal keine Meldung bekomme... :gruebel:

Aber schön, daß es jetzt funktioniert. Mußt halt aufpassen, falls eine Zeile bereits die SubItems hat. Dann würdest du mit Add neue Spalten dahinter einfügen. Daher müßtest du dann die SubItems einzeln ansprechen über SubItems[x].


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz