Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi [IdFtp]ChangeDir bei ListBox klick (https://www.delphipraxis.net/41795-%5Bidftp%5Dchangedir-bei-listbox-klick.html)

citybreaker 8. Mär 2005 19:01


[IdFtp]ChangeDir bei ListBox klick
 
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?

IngoD7 12. Mär 2005 20:35

Re: [IdFtp]ChangeDir bei ListBox klick
 
Dein Listbox.ItemIndex dürfte für den Inhalt deiner Liste DirectoryListing.Items[] zu hoch sein, oder?

Überprüfe doch mal mit DirectoryListing.Count, wieviele Einträge du dort überhaupt hast.

citybreaker 13. Mär 2005 13:01

Re: [IdFtp]ChangeDir bei ListBox klick
 
Seltsamer Weise 0 Einträge. Wobei ich mit idFtp.List 5 Einträge
in meiner ListBox angezeigt bekomme.

Prosac 14. Mär 2005 10:32

Re: [IdFtp]ChangeDir bei ListBox klick
 
Das ist wohl genau das selbe Problem wie hier. :wink:

fragile 9. Feb 2009 12:31

Re: [IdFtp]ChangeDir bei ListBox klick
 
Wenn du in deinem ListView Sorting an hast, dann unterscheidet sich die Reihenfolge deiner Items in DirectoryListing von denen der ListView-Items !
In der if-Abfrage vermischt du aber die verschiedenen Indizes, an demselben Problem hänge ich im Moment auch.


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