AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[behoben]Drag n Drop problem

Ein Thema von Spawnche · begonnen am 16. Jan 2008 · letzter Beitrag vom 17. Jan 2008
Antwort Antwort
Spawnche

Registriert seit: 14. Aug 2007
Ort: Offenbach
6 Beiträge
 
#1

[behoben]Drag n Drop problem

  Alt 16. Jan 2008, 14:17
Hallo alle,

Ja habe die sufu benutzt aber irgendwie nirgends nochmal das gleiche problem gefunden,

Ich habe mir ein tool gebastelt um dateien auf verschiedene filehoster hochzuladen funktioniert alles problemlos mit queue etc..

nun wollte ich aber noch die möglichkeit hinzufügen dateien direkt per drag'n'drop in die queue zu adden habe mir alle möglichen beispiele und threads zu angeguckt sollte eigentlich funktionieren aber wenn ich ne datei auf die form ziehen will egal wohin bekomm ich nur das verbotsschild(not-possible) und weis nu nimmer weiter.


Gruss
Spawnche
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Drag n Drop problem

  Alt 16. Jan 2008, 14:35
Moin Spawnche,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Für mich sieht es im Moment so aus, als hättest Du im OnDragOver-Event Accept nicht auf True gesetzt.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Spawnche

Registriert seit: 14. Aug 2007
Ort: Offenbach
6 Beiträge
 
#3

Re: Drag n Drop problem

  Alt 16. Jan 2008, 14:42
Hi Seehase,

Danke für das willkommen, bin zwar scho etwas länger hier im forum unterwegs aber eher stiller leser als grosses posten nur diesmal komm ich nicht weiter.

habe es mit

DragAcceptFiles(handle, True);

im onCreate event versucht aber leider erfolgslos.
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#4

Re: Drag n Drop problem

  Alt 16. Jan 2008, 14:50
Hallo,

schau Dir doch mal meine Komponente ShellDropper an.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
Benutzerbild von peschai
peschai

Registriert seit: 15. Feb 2004
Ort: Göppingen
270 Beiträge
 
Delphi XE5 Professional
 
#5

Re: Drag n Drop problem

  Alt 16. Jan 2008, 14:59
Hallo

Kleines exemplarisches Beispiel für Datei Drag&Drop.
Also Im Explorer Dateien markieren und mit der Maus in unsere Applikation Ziehen ...
Hier wird dann eine Listbox mit den Namen gefüllt....


Delphi-Quellcode:
type
  TForm1 = class(TForm)
    ...
    Listbox1 ...
    ...
  private
    ...
    procedure WMDropFiles(VAR Msg:TWMDROPFILES); MESSAGE WM_DROPFILES;
  public
    ...
  end;

Function fctWMDropFiles { >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> }
         (hDrop:tHandle;j:TStrings):integer;
var
  i1:integer;
  i2:integer;
  z1:ARRAY[0..255] of Char;
begin
  // local init
  Result := 0;
  i1 := 0;
  i2 := 0;
  FillChar(z1,SizeOf(z1),0);
  // local exit
  if not assigned(j) then exit;
  // local main

  // Ziel-Liste leeren
  j.Clear;

  // Anzahl Dateinamen
  i1 := DragQueryFile(hDrop,LongWord(-1), nil, 0);

  // Alle Dateinamen in Schleife holen
  for i2 := 0 to i1-1 do
    begin
      // Namen holen nach z1
      FillChar(z1,SizeOf(z1),0);
      DragQueryFile(hDrop,i2,z1,SizeOf(z1)-1);
      // Name in Zielliste speichern
      if (StrPas(z1)<>'') then
        begin
          j.Add(StrPas(z1));
        end;
    end;
  DragFinish(hDrop);
  fctWMDropFiles := i2+1;
end; { <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< }


procedure TForm1.FormCreate(Sender: TObject);
begin
  ...
  { FileManager Dragging }
  DragAcceptFiles(Handle,True);
  ...
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  ...
  { FileManager Dragging }
  DragAcceptFiles(Handle,False);
  ...
end;

procedure TForm1.WMDropFiles(VAR Msg:TWMDROPFILES);
begin
  fctWmDropFiles(Msg.Drop,ListBox1.Items);
end;
Peter Schaible
  Mit Zitat antworten Zitat
Spawnche

Registriert seit: 14. Aug 2007
Ort: Offenbach
6 Beiträge
 
#6

Re: Drag n Drop problem

  Alt 16. Jan 2008, 15:07
naja peschai so ähnlich habe ich es ja auch


Delphi-Quellcode:
type
  TForm1 = class(TForm)
  ....
  procedure WMDROPFILES(var Msg: TMessage); Message WM_DROPFILES;
  ....
  ....
  ....


procedure TForm1.WMDROPFILES(var Msg: TMessage);
var
  i, Counts, Size: Integer;
  PCharFileName: PChar;
begin
  inherited;

  PCharFileName := nil;
  Counts := DragQueryFile(Msg.WParam, $FFFFFFFF, PCharFileName, 255);

  for i := 0 to Counts - 1 do
  begin
    Size := DragQueryFile(Msg.WParam, i, nil, 0) + 1;
    PCharFileName := StrAlloc(Size);
    DragQueryFile(Msg.WParam, i, PCharFileName, Size);
    showmessage(PCharFileName);
    StrDispose(PCharFileName);
  end;

  DragFinish(Msg.WParam);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  DragAcceptFiles(handle, True);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  DragAcceptFiles(handle, false);
end;
Aber soweit kommt es ja erst garnicht da wie gesagt ich durchgehend egal wo auf der Form den not-possible cursor angezeigt bekomme, formcreate wird noch ausgeführt aber mehr auch nit.
  Mit Zitat antworten Zitat
Benutzerbild von peschai
peschai

Registriert seit: 15. Feb 2004
Ort: Göppingen
270 Beiträge
 
Delphi XE5 Professional
 
#7

Re: Drag n Drop problem

  Alt 17. Jan 2008, 06:52
Hallo Spawnche

Ist das "Inherited" in deiner WMDropFiles da richtig ? Das gehört da nicht hin. Versuchs mal ohne.
Peter Schaible
  Mit Zitat antworten Zitat
Spawnche

Registriert seit: 14. Aug 2007
Ort: Offenbach
6 Beiträge
 
#8

Re: Drag n Drop problem

  Alt 17. Jan 2008, 08:20
Selbst wenn es da nicht hingehört, hat dies ja nichts mit dem eigentlichen problem zutun da es ja erst garnicht soweit kommt da das komplett formular keinen dragndrop zu lässt wenn ich eine datei auf das form ziehe bekomm ich einfach das http://www.sisl.ch/images/extinction/forbidden.gif zeichen angezeigt, das is das einzige problem was ich habe und nicht die behandlung des drops danach
  Mit Zitat antworten Zitat
Spawnche

Registriert seit: 14. Aug 2007
Ort: Offenbach
6 Beiträge
 
#9

Re: Drag n Drop problem

  Alt 17. Jan 2008, 09:17
Habe das Problem soeben gefunden, da ich paar style einstellungen für das Form habe, wird wohl das handle nach FormCreate nochmal freigegeben ich habe das DragAcceptFiles nun ins OnShow gesetzt nun funktioniert es.
  Mit Zitat antworten Zitat
Antwort Antwort


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 16:15 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