Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Drag&Drop nach aussen? (https://www.delphipraxis.net/8906-drag-drop-nach-aussen.html)

Burning_Chrome 15. Sep 2003 10:10


Drag&Drop nach aussen?
 
Hi!

bitte nicht schlagen - das thema wurde hier schon ein paar mal besprochen, aber ich werd nicht schlauer bei meinem problem (oder ich finde die informationen nicht...)

problem: ich moechte das ergebnis einer textsuche die in einem stringgrid steht per drag und drop in ein anederes programm ziehen. gibt's hier eine schnelle und einfache loesung?

bin fuer alle tips dankbar!!

Best_Regards
Burning_Chrome

neolithos 15. Sep 2003 10:17

Re: Drag&Drop nach aussen?
 
Ne schnelle Lösung gibt es da leider nicht! Jedenfalls kenn ich keine!

1. Kennst du dich mit COM-Objecten aus?
2. Dann schau unter DoDragDrop, IDataObject und IDropSource.

=> dann ist es ganz einfach, aber zu umfangreich um hier etwas zu posten.

Burning_Chrome 16. Sep 2003 10:23

Re: Drag&Drop nach aussen?
 
Hi!

puh, das klingt nach arbeit - werd mich mal einlesen... :coder:
DANKE fuer den tip!!

Best_Regards
Burning_Chrome

neolithos 16. Sep 2003 10:29

Re: Drag&Drop nach aussen?
 
Das klingt nach arbeit! Ok! Aber es lohnt sich! Wirklich!

IDragSourceHelper
IDropTargetHelper

als letztes auch noch ansehen.
Damit kann man ab Win2k die Alpha-Blend Bilder unterstützen.


Das brauchst du noch dafür...
Delphi-Quellcode:
const
  IID_IDropTargetHelper: TGUID = '{4657278B-411B-11D2-839A-00C04FD918D0}';
  IID_IDragSourceHelper: TGUID = '{DE5BF786-477A-11D2-839D-00C04FD918D0}';
  CLSID_DragDropHelper: TGUID = '{4657278A-411B-11D2-839A-00C04FD918D0}';

type
  IDropTargetHelper = interface(IUnknown)
    ['{4657278B-411B-11D2-839A-00C04FD918D0}']
    function DragEnter(hwndTarget: HWND; pDataObject: IDataObject; var ppt: TPoint; dwEffect: Integer): HRESULT; stdcall;
    function DragLeave: HRESULT; stdcall;
    function DragOver(var ppt: TPoint; dwEffect: Integer): HRESULT; stdcall;
    function Drop(pDataObject: IDataObject; var ppt: TPoint; dwEffect: Integer): HRESULT; stdcall;
    function Show(fShow: Boolean): HRESULT; stdcall;
  end;

  PSHDragImage = ^TSHDragImage;
  TSHDragImage = packed record
    sizeDragImage: TSize;
    ptOffset: TPoint;
    hbmpDragImage: HBITMAP;
    ColorRef: TColorRef;
  end;

  // Nachricht vom IDragSourceHelper die durch das InitializeFromWindow
  // ausgelöst wird : lParam steht eine PWClipbrd.TSHDragImage struktur
const
  DI_GETDRAGIMAGE = 'ShellGetDragImage';
 
type
  IDragSourceHelper = interface(IUnknown)
    ['{DE5BF786-477A-11D2-839D-00C04FD918D0}']
    function InitializeFromBitmap(var SHDragImage: TSHDragImage; pDataObject: IDataObject): HRESULT; stdcall;
    function InitializeFromWindow(Window: HWND; var ppt: TPoint; pDataObject: IDataObject): HRESULT; stdcall;
  end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:37 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