AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Mehrere Dateien vom Explorer per Drag & Drop in Listbox?
Thema durchsuchen
Ansicht
Themen-Optionen

Mehrere Dateien vom Explorer per Drag & Drop in Listbox?

Ein Thema von Nicodius · begonnen am 7. Okt 2004 · letzter Beitrag vom 10. Okt 2004
Antwort Antwort
Seite 3 von 3     123   
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#21

Re: Mehrere Dateien vom Explorer per Drag & Drop in List

  Alt 10. Okt 2004, 19:33
*push* nicht sauer sein luckie
Nico Müller
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#22

Re: Mehrere Dateien vom Explorer per Drag & Drop in List

  Alt 10. Okt 2004, 19:47
Hi,

ich hab dir mal eben was gebastelt:

Delphi-Quellcode:
  function IsDirectory(Dir: WideString): Boolean;
  var
    F: TWin32FindDataW;
    Handle: HWnd;
  begin
    Handle := FindFirstFileW(PWideChar(Dir), F);
    if Handle <> INVALID_HANDLE_VALUE then
    begin
      Result := ((f.dwFileAttributes and faDirectory) = faDirectory);
      Windows.FindClose(Handle);
    end else
    Result := False;
  end;

procedure FindAllFiles(var FileList: TStrings; RootFolder: string; Mask: string =
  '*.*'; Recurse: Boolean = True);
var
  SR: TSearchRec;
begin
  if AnsiLastChar(RootFolder)^ <> '\then
    RootFolder := RootFolder + '\';
  if Recurse then
    if FindFirst(RootFolder + '*.*', faAnyFile, SR) = 0 then
    try
      repeat
        if SR.Attr and faDirectory = faDirectory then
            // --> ein Verzeichnis wurde gefunden
            // der Verzeichnisname steht in SR.Name
            // der vollständige Verzeichnisname (inkl. darüberliegender Pfade) ist
            // RootFolder + SR.Name
          if (SR.Name <> '.') and (SR.Name <> '..') then
            FindAllFiles(FileList, RootFolder + SR.Name, Mask, Recurse);
      until FindNext(SR) <> 0;
    finally
      FindClose(SR);
    end;
  if FindFirst(RootFolder + Mask, faAnyFile, SR) = 0 then
  try
    repeat
      if SR.Attr and faDirectory <> faDirectory then
      begin
       // --> eine Datei wurde gefunden
          // der Dateiname steht in SR.Name
          // der vollständige Dateiname (inkl. Pfadangabe) ist
          // RootFolder + SR.Name
        FileList.Add(RootFolder + SR.Name);
      end;
    until FindNext(SR) <> 0;
  finally
    FindClose(SR);
  end;
end;
 
procedure TForm1.WMDROPFILE(var msg: TMessage);
var LCount, Lanzahl, Lsize: integer;
  LDateiname: PChar;
  List: TStringList;
  i: Integer;
begin
  LDateiname := '';
  Lanzahl := DragQueryFile(Msg.WParam, $FFFFFFFF, LDateiname, 255);
  for LCount := 0 to (Lanzahl - 1) do
  begin
    Lsize := DragQueryFile(Msg.WParam, LCount, nil, 0) + 1;
    LDateiname := StrAlloc(Lsize);
    DragQueryFile(Msg.WParam, LCount, LDateiname, Lsize);
    List := TStringList.Create;
    try
      if IsDirectory(String(LDateiName)) then
        FindAllFiles(List, String(LDateiName)) else
      List.Add(String(LDateiName));
      for i := 0 to List.Count-1 do
        If (ExtractFileExt(AnsiLowerCase(List[i])) = '.ico') or
           (ExtractFileExt(AnsiLowerCase(List[i])) = '.bmp') or
           (ExtractFileExt(AnsiLowerCase(List[i])) = '.jpg') or
           (ExtractFileExt(AnsiLowerCase(List[i])) = '.jpeg') then
        Listbox1.Items.add(List[i]);
    finally
      List.Free;
    end;
// do Something with "LDateiname"
    StrDispose(LDateiname);
  end;
// FDropProc(LFileList);
  DragFinish(Msg.WParam);
end;
Ist ungetestet, sollte aber, so hoffe ich, funktionieren.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#23

Re: Mehrere Dateien vom Explorer per Drag & Drop in List

  Alt 10. Okt 2004, 20:17
nee geht nid .... siehe anhang das kommt nacher danke trotzdem
Miniaturansicht angehängter Grafiken
bug_174.jpg  
Nico Müller
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#24

Re: Mehrere Dateien vom Explorer per Drag & Drop in List

  Alt 10. Okt 2004, 20:22
Hi,

da warn kleiner Fehler:
Listbox1.Items.add(List[i]); muss es heissen.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#25

Re: Mehrere Dateien vom Explorer per Drag & Drop in List

  Alt 10. Okt 2004, 20:33
wohin damit?
Nico Müller
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#26

Re: Mehrere Dateien vom Explorer per Drag & Drop in List

  Alt 10. Okt 2004, 20:36
Zitat von Nicodius:
wohin damit?
An die Schleife:
Delphi-Quellcode:
      for i := 0 to List.Count-1 do
        If (ExtractFileExt(AnsiLowerCase(List[i])) = '.ico') or
           (ExtractFileExt(AnsiLowerCase(List[i])) = '.bmp') or
           (ExtractFileExt(AnsiLowerCase(List[i])) = '.jpg') or
           (ExtractFileExt(AnsiLowerCase(List[i])) = '.jpeg') then
        Listbox1.Items.add(List[i]);
mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#27

Re: Mehrere Dateien vom Explorer per Drag & Drop in List

  Alt 10. Okt 2004, 20:56
DAAAAAAAAAAAAAAAAAAAAAAAAAAAANNNNNNNNNNNKKKKKKKKKK KKKKEEEEEe




so viel geholfen DANKE mirage228!!! das macht ja gleich alle fragen aufeinmal dein CODE DANKEE! *umarm*
Nico Müller
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#28

Re: Mehrere Dateien vom Explorer per Drag & Drop in List

  Alt 10. Okt 2004, 20:57
Zitat von Nicodius:
DAAAAAAAAAAAAAAAAAAAAAAAAAAAANNNNNNNNNNNKKKKKKKKKK KKKKEEEEEe




so viel geholfen DANKE mirage228!!! das macht ja gleich alle fragen aufeinmal dein CODE DANKEE! *umarm*
Bitte sehr

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:18 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