Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   DROP Image Url vom Browser (https://www.delphipraxis.net/155261-drop-image-url-vom-browser.html)

H3llsing 15. Okt 2010 08:55

DROP Image Url vom Browser
 
Morgen zusammen :)

ich hab mitlerweile ne stunde gesucht und bin nicht fündig geworden, und das bei der Masse an Drag & Drop Themen, die es hier gibt.

ok zu meinem problem: ich wollte mir gern eine eigene Komponente schreiben, in der man ein Image aus dem Web (Firefox IE etc) auf ein Timage zieht. Das klappt auch schon wunderbar mit einem Panel dessen handle ich nehme und ein Timage darauf plaziere.

Nun möchte ich aber auch gerne die Online URL des Bildes in einem Edit anzeigen. Leider gibt mir die Funktion nur den temporären Pfad des bildes aus :/

hier die Drop funktion
Delphi-Quellcode:
procedure TDropPanel.FWM_DropFiles(var Msg: TMessage);
var i, anzahl, size: integer;
    Dateiname: String;
    antwort: Integer;
begin
  inherited;
  Dateiname := '';
  anzahl := DragQueryFile(Msg.WParam, $FFFFFFFF, nil, 0);
  for i := 0 to (anzahl - 1) do
  begin
    size := DragQueryFile(Msg.WParam, i , nil, 0) + 1;
    SetLength(Dateiname, size);
    SetLength(Dateiname, DragQueryFile(Msg.WParam,i , @Dateiname[1], size));
    //hier dein source - in "Dateiname" ist der name des droped objectes

    getPicture(dateiname,targetimage);
  end;
end;
habt ihr eine Idee wie man die Url des Webbildes herausbekommt ?

lbccaleb 15. Okt 2010 09:41

AW: DROP Image Url vom Browser
 
Vllt kann dir das weiter helfen:

Text Drag Drop

H3llsing 15. Okt 2010 09:49

AW: DROP Image Url vom Browser
 
VIELEN DANK!

deine Testprog erzielt den gewünschten effekt!
Werd es mir mal genauer anschaun und in die komponente integrieren =)

H3llsing 15. Okt 2010 14:27

AW: DROP Image Url vom Browser
 
Ich bräuchte nochmal ein wenig Hilfe.

ich habe eine Komponente die vom Tpanel abgeleitet ist.
dieser habe ich noch ein TargetEdit,TargetListbox und TargetImage hinzugefügt.

wenn man nun etwas aufs Panel Droppt, füllt er das jeweilige control mit string oder zeigt das bild an. Dass passiert mit der WM_DROPFILES funktion.

nun möchte ich allerdings
diese Unit von lbccaleb
in die komponente mit einbeziehen, damit ich bei Drop statt die tempURL die OnlineURL des bildes in die controles schreiben kann.

Wie realisier ich das ganze ?!
hab schon etliche probelaufe durch und mir ist das ganze komponenten schreiben recht neu.

Wäre für jede hilfe dankbar !

Andreas L. 15. Okt 2010 14:32

AW: DROP Image Url vom Browser
 
Verwende einfach "The Drag and Drop Component Suite for Delphi":

http://melander.dk/delphi/dragdrop/

H3llsing 15. Okt 2010 14:42

AW: DROP Image Url vom Browser
 
die hab ich bereits installiert.
Allerdings habe ich es dort auch nicht geschafft bei einem einzigen Image drop aus dem explorer die URL in einem bestimmten Edit anzeigen zu lassen und gleichzeitig das image in ein TImage zu setzten.

es funktioniert nur wenn man die Quelle genau über das Edit für die URL zum beispiel droppt, oder über dem Timage bzw dem drunterliegendem Panel für das Image. Aber nicht Beides Gleichzeitig!

Wenn du dafür ne Lösung parat hast nehme ich die auch gerne =)

Andreas L. 15. Okt 2010 14:55

AW: DROP Image Url vom Browser
 
Habe schon lange nichts mehr damit gemacht. Aber den Komponenten lag eine ziemlich gute Demo bei in der man auch ein Bild aus dem Browser in ein ImageDrop-Feld ziehen konnte. Es geht also 100%ig. Schau's dir mal an ;-) Ich habe mich damals für diese Komponenten entschieden weil es die einzigen sind die von Win XP - Win 7 funktioniert haben.

H3llsing 15. Okt 2010 14:58

AW: DROP Image Url vom Browser
 
hmm... aber in der demo wars auch so dass man entweder auf dem Edit oder auf dem Image droppen konnte, werds mir aber nochmal anschaun!

ich möchte ja mit einem drop beides angezeigt bekommen!


EDIT: stimmt dort ist noch ne super demo drin die ich wohl übersehen habe! -> DETAILED DEMO

daran werde ich das wohl zusammenbasteln können =) Vielen Dank an Euch beide !

H3llsing 15. Okt 2010 15:56

AW: DROP Image Url vom Browser
 
so ganz klappts irgendwie nicht.
denn URL TargetDrop nimmt wenn das bild nicht verlinkt ist die URL des bildes.
Falls es jedoch verlinkt ist, zeigt es die Verlinkung des Bildes im label an.

Downloadbild lädt die url nur in einen stream und zeigt sie dann im Image an.

Wie bekomme ich denn nun immer bei einem BilderDrop....
1.das Bild an sich im Image
2.die Bild Url
3.die verlinkte URL des bildes


Delphi-Quellcode:
procedure TForm1.DropURLTarget1Drop(Sender: TObject; ShiftState: TShiftState;
  APoint: TPoint; var Effect: Integer);
begin
  // An URL has been dropped - Copy the URL and title from the drop target.
  PanelURL.Caption := DropURLTarget1.Title;
  LabelURL.Caption := DropURLTarget1.URL;
  DownloadBild(DropURLTarget1.URL,ImageTarget);


end;

lbccaleb 15. Okt 2010 16:25

AW: DROP Image Url vom Browser
 
Wenn du die Url zu dem Bild "gedroped" hast, kannst du das Bild doch einfach nachträglich von dieser Url laden und anzeigen!


Edit:
Wie die von mir oben gepostete Komponente allerdings mit Win 7 funktioniert weiß ich nicht....


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:26 Uhr.
Seite 1 von 3  1 23      

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