Hallöchen,
ich hab da mal wieder ein Problem. Unzwar lasse ich die
Verzeichnisse und Dateien von einem FtpServer(?!) in einer
ListBox auflisten. Nun möchte ich das wenn man einen Ordner
anklickt den Ordner wechselt. In der ifFtp Demo ist das Problem
folgendermaßen gelöst.
Delphi-Quellcode:
Var
Name{, Line}: String;
begin
if not IdFTP1.Connected then exit;
//Line := DirectoryListBox.Items[DirectoryListBox.ItemIndex];
Name := IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].FileName;
if IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].ItemType = ditDirectory then begin
// Change directory
SetFunctionButtons(false);
ChageDir(Name);
SetFunctionButtons(true);
end else ...
Ich habe nun in meinem Quellcode
Delphi-Quellcode:
var
Name: String;
begin
if not IdFTP.Connected then exit;
Name := IdFTP.DirectoryListing.Items[ListBox1.ItemIndex].FileName;
if IdFTP.DirectoryListing.Items[ListBox1.ItemIndex].ItemType = ditDirectory then
idFtp.ChangeDir(Name);
end;
Allerdings kommt nun beim Doppelklick auf ein Verzeichnis: "ListenIndex überschreitet das Maximum (1*)"
* jenachdem welches Item angeklickt wurde also die zahl ist immer anders.
Hat jemand eine Idee warum das nicht geht?