Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen (https://www.delphipraxis.net/67913-mit-opendialog-mehrere-dateien-gleichzeitig-hinzufuegen.html)

cruso 21. Apr 2006 18:33


Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
Hi!

Was ich gerne wissen würde ist, ob es möglich ist mit Hilfe des OpenDialogs mehrere Dateien auf einmal auszuwählen und wenn, wie?
Es soll wenn die Shift-Taste gedrückt wird (oder irgendwie anders) möglich sein mehrere Dateien auf einmal auszuwählen und wenn man dann auf "Öffnen" klick sollen die Pfade dieser Dateien einer ListBox angehängt werden.
Könnt ihr mir vllt helfen?



MfG
Cruso

SirThornberry 21. Apr 2006 18:36

Re: Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
das geht mit einem OpenDialog. Du musst einfach bei den Optionen das Multiselect auf True setzen und dann kannst du über OpenDialog.Files (ich hoffe ich täusche mich nicht im Namen des Properties) die ausgewählten Dateien abfragen.

cruso 21. Apr 2006 18:39

Re: Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
Zitat:

Zitat von SirThornberry
das geht mit einem OpenDialog. Du musst einfach bei den Optionen das Multiselect auf True setzen und dann kannst du über OpenDialog.Files (ich hoffe ich täusche mich nicht im Namen des Properties) die ausgewählten Dateien abfragen.


Also es kann sein, dass ich momentan Blind bin aber Multiselect finde ich nirgens.

Flare 21. Apr 2006 18:45

Re: Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
Es heißt Options/ofAllowMultiSelect


Flare

leddl 21. Apr 2006 18:47

Re: Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
Du bist zumindest teilweise blind :zwinker:
Die gesuchte Porperty befindet sich unter Options --> ofAllowMultiSelect ;)

//Edit: Holla, das war gerade noch nich da :gruebel:

cruso 21. Apr 2006 18:50

Re: Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
Um eine Datei hinzuzufügen habe ich das bisher so geregelt:

Delphi-Quellcode:
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
  if OpenDialog1.Execute then
try
  ListBox1.Items.Add(OpenDialog1.FileName);
  ListBox1.Items.SaveToFile(GAD+'Data.txt');
except
  Application.MessageBox('Die Datei konnte nicht geladen werden!','Unzulässige Benutzereingabe',16);
end;
end;

Wie muss ich das nun regeln?

markusj 21. Apr 2006 18:52

Re: Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
Du findest unter Files eine StringList mit den Dateipfaden ... such dir raus welche du laden willst^^ *g*

mfG

Markus

turboPASCAL 21. Apr 2006 18:53

Re: Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
Delphi-Quellcode:
procedure TFormX.ButtonClick...
var i: Integer;
begin
  OpenDialog1.Options := [ofReadOnly, ofAllowMultiSelect];

  if OpenDialog1.Execute then
  begin
   memo1.Lines := OpenDialog1.Files;

   //oder einzeln auslesen:
   // for i := 0 to OpenDialog1.Files.Count - 1 do
   //   ... := OpenDialog1.Files[i];

  end;
end;

cruso 21. Apr 2006 19:03

Re: Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
Danke für eure Hilfe! Es funktioniert.

danku 28. Apr 2006 19:50

Re: Mit OpenDialog mehrere Dateien gleichzeitig hinzufügen
 
und wie funktioniert das bei einer stringgrid (nur 1column) wenn man mehrere dateien über einen topendialog1 in die cells "klickt" ;)?
wäre eine tstringlist besser?


Prinzip/Aufbau:

tmemo -> Pfad/Ordner der Datei
tbutton: öffnet opendialog1 (ofmultiselect TRUE)
tstringgrid: zeigt ergebnis von opendialog1 an

Delphi-Quellcode:
procedure Tfmformat.bopenClick(Sender: TObject);
var pfad:string;
i,s: byte;

{ OPENDIALOG1 Options:
 - ofNoDerencesLinks - Path ausstellen
 - ofNoLongName     - .. // nur in Verbindung mit ofOldStyleDialog
 - ofNoReadOnlyReturn   Zeigt eine Fehlermeldung an, wenn schreibgeschützte Datei }

begin


//****************STRINGGRID********************
       if OpenDialog1.Execute then
            begin
       //   pfad:= OpenDialog1.FileName;
       //   AddFiles(sl, OpenDialog1.FileName);

//Füllen aus TOpendialog1
 for i := 0 to OpenDialog1.Files.Count - 1 do          
 sgfiles.cells[0,1+i]:= OpenDialog1.Filename;            

//Sobald 2xDateien gewählt werden, wird nur 1 aber 2x in die TStringgrid geschrieben



 {//repeat
 while
 sgfiles.cells[0,i+1]=opendialog1.Files.strings[i] do
 inc(i);
 //Neue Zeile einfügen
 sgfiles.RowCount:=sgfiles.RowCount+1;}


 end;
 end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:06 Uhr.
Seite 1 von 2  1 2      

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