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 LoadFromFile bei TListView (https://www.delphipraxis.net/11134-loadfromfile-bei-tlistview.html)

DelphiUser7 31. Okt 2003 15:47


LoadFromFile bei TListView
 
Hi,
diesmal nur eine ganz kurze Frage: Gibt es LoadFromFile in einer TListView?;
Wenn nicht, was könnte ich stattdessen verwenden?

Gruss
DelphiUser7

Luckie 31. Okt 2003 15:49

Re: LoadFromFile bei TListView
 
Nein, gibt es nicht. Aber kuck mal hier: http://www.assarbad.org/de/sources.shtml -> MiniDatenbank

DelphiUser7 31. Okt 2003 16:02

Re: LoadFromFile bei TListView
 
Delphi-Quellcode:
function ListViewLoadFromFile(ListView: TListView; AFileName: string): Boolean;
var
  fs: TFileStream;
begin
  fs := TFileStream.Create(AFileName, FMOpenRead or fmShareDenyNone);
  try
    fs.ReadComponentRes(ListView);
  finally
    fs.Free;
  end
end;
Das hier würde mir weiterhelfen, wenn ich wüsste, wie ich das auf meine TListView anwenden kann;
:gruebel: :gruebel:

MFG
DelphiUser7

Luckie 31. Okt 2003 16:04

Re: LoadFromFile bei TListView
 
In dem du einfach die Funktion aufrufst?

Die Datei muss aber vorher auch so gespeichert worden sein, sonst geht es nicht.

scp 31. Okt 2003 17:05

Re: LoadFromFile bei TListView
 
und hier die Textdatei-Variante:

Delphi-Quellcode:
procedure SaveListItemsToFile(Filename : String; ListItems : TListItems);
var
  ItemCount,
  SubItemCount : Integer;
  ItemStr : String;
  ListFile : TextFile;
  IOr : Integer;
begin
  {$I-}
  AssignFile(ListFile, Filename);
  ReWrite(ListFile);
  for ItemCount := 0 to (ListItems.Count - 1) do
    begin
      ItemStr := ListItems[ItemCount].Caption + Chr(9);
      for SubItemCount := 0 to (ListItems[ItemCount].SubItems.Count - 1) do
        ItemStr := ItemStr + ListItems[ItemCount].SubItems[SubItemCount] + Chr(9);
      WriteLn(ListFile, ItemStr);
    end;
  CloseFile(ListFile);
  {$I+}
  IOr := IOResult;
  If (IOr <> 0) then
    ShowMessage(IntToStr(IOr) + ': ' + Filename);
end;

procedure LoadListItemsFromFile(Filename : String; ListItems : TListItems);
var
  ItemStr : String;
  ListFile : TextFile;
  IOr : Integer;
begin
  {$I-}
  AssignFile(ListFile, Filename);
  Reset(ListFile);

  ListItems.Clear;
  while not eof(ListFile) do
    begin
      ReadLn(ListFile, ItemStr);
      with ListItems.Add do
        begin
          Caption := Copy(ItemStr, 1, Pos(Chr(9), ItemStr) - 1);
          ItemStr := Copy(ItemStr, Pos(Chr(9), ItemStr) + 1, length(ItemStr));
          while (Pos(Chr(9), ItemStr) > 0) do
            begin
              SubItems.Add(Copy(ItemStr, 1, Pos(Chr(9), ItemStr) - 1));
              ItemStr := Copy(ItemStr, Pos(Chr(9), ItemStr) + 1, length(ItemStr));
            end;
        end;
    end;

  CloseFile(ListFile);
  {$I+}
  IOr := IOResult;
  If (IOr <> 0) then
    ShowMessage(IntToStr(IOr) + ': ' + Filename);
end;

procedure TForm1.Button1Click(Sender : TObject);
begin
  SaveListItemsToFile('C:\test.txt', ListView1.Items);
end;

DelphiUser7 2. Nov 2003 10:23

Re: LoadFromFile bei TListView
 
Zitat:

Zitat von Luckie
Die Datei muss aber vorher auch so gespeichert worden sein, sonst geht es nicht.

Wie soll ich denn Dateien speichern, die ich gar nicht selbst erstellt habe, d.h. bei Musikdateien ist dies der Fall, aber bei PlayLists leuchtet es ja ein, dass ich sie selbst abspeichern muss!;

DelphiUser7

Luckie 2. Nov 2003 10:25

Re: LoadFromFile bei TListView
 
Dann musst du die Methode von scp nehmen.

DelphiUser7 2. Nov 2003 10:39

Re: LoadFromFile bei TListView
 
Ja, das ist mir schon klar, aber ich möchte wissen, ob es ein Problem mit dem Laden von Dateien in die PlayList bzw. von einer TStringList in diese PlayList gibt?


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