![]() |
drag & drop zwischen zwei delphi5-anwendungen
moin gemeinde,
habe viele (alle) beiträge zu drag&drop gelesen. leider hilft mir keiner weiter. auch ![]() funktioniert in meinem fall NICHT. das DragOver-event wird nicht gefeuert, wenn ich aus einer delphi-anwendung einen eintrag aus einem treeview über die zweite anwendung drag. ich möchte aus ein TreeView1 der ersten anwendung auf ein irgendein control der zweiten anwendung dropen. in der zweiten anwendung brauche ich zugriff auf TreeView1.Selected.Data der ersten anwendung. wie kann ich das anstellen? |
Re: drag & drop zwischen zwei delphi5-anwendungen
Zitat:
Mit dem Beispielcode von oben kannst du so zwar auf dem Formular droppen, aber nicht auf dem TreeView. Deshalb:
Delphi-Quellcode:
Aber Obacht!! Zum Zeitpunkt von OnCreate gibt es das Handle des TreeView evtl. noch nicht.
procedure TForm1.FormCreate(Sender: TObject);
begin OleInitialize(nil); {Allow window to accept drop events} OleCheck(RegisterDragDrop(Handle, Self)); // Handle des TreeView registrieren OleCheck(RegisterDragDrop(TreeView1.Handle, Self)); end; Dann müsste RegisterDragDrop später in OnShow (oder noch später) ausgeführt werden. RevokeDragDrop muss auch aufgerufen werden - is klar. |
Re: drag & drop zwischen zwei delphi5-anwendungen
moin shmia,
Zitat:
aber wie ich bereits oben geschrieben habe, möchte ich nicht in den tree droppen, sonder aus dem tree einen node in ein anderes programm draggen. |
Re: drag & drop zwischen zwei delphi5-anwendungen
Zitat:
Die Quellanwendung muss das Interface IDragSource implementieren. Dazu gibt es auf swissdelphicenter.ch ein Beispiel: ![]() In diesem Beispiel erzeugt die Funktion GetFileListDataObject ein Objekt vom Typ IDataObject. In deinem Fall muss IDataObject anderst erzeugt werden. ![]() Interessant: ![]() |
Re: drag & drop zwischen zwei delphi5-anwendungen
Hallo
welchen Libraray muß ich einbinden, weil mein Delphi mekert bei OleInitialize(nil); {Allow window to accept drop events} OleCheck(RegisterDragDrop(Handle, Self)); // Handle des TreeView registrieren OleCheck(RegisterDragDrop(TreeView1.Handle, Self)); mfg |
Re: drag & drop zwischen zwei delphi5-anwendungen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:50 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