certamente scrivero a devexpress.... nel frattempo sto continuanto a cercare in rete.
lato delphi, riesco a capire quando ci sono file nella clipboard che sono da tagliare (quindi eseguire un 'move' dei file) o da copiarwe (quendi eseguire un 'copy').
c'e' una sorta di flag da cui si evince l'azione da fare.
ancora, non ho capito come settare questo 'flag' come 'copy' o come 'move'
vi posto il codice che ho testato.
se volete provare in una form inserire Memo1 (Tmemo) e un button
graziecodice:procedure TFrameExplorer.Button1Click(Sender: TObject); var DropHandle, DropEffect, Effect : HDROP; FileCount:Integer; Counter:Integer; FileName:array [0..MAX_PATH] of char; const DROPEFFECT_NONE = 0; DROPEFFECT_COPY = 1; DROPEFFECT_MOVE = 2; DROPEFFECT_LINK = 4; DROPEFFECT_SCROLL = $80000000; begin inherited; Memo1.Lines.Clear; OpenClipboard(0); DropEffect := RegisterClipboardFormat('Preferred DropEffect'); DropHandle := GetClipboardData(CF_HDROP); if DropHandle>0 then begin Effect := GetClipboardData(DropEffect); if Effect=0 then Effect := DROPEFFECT_COPY else Effect := PDWORD(Effect)^; case Effect of DROPEFFECT_COPY + DROPEFFECT_LINK:Memo1.Lines.Add('Copy'); DROPEFFECT_MOVE:Memo1.Lines.Add('Move'); end; FileCount:=DragQueryFile(DropHandle,Cardinal(-1),nil,0); for Counter := 0 to FileCount-1 do begin DragQueryFile(DropHandle, Counter, FileName, sizeof(FileName)); Memo1.Lines.Add(FileName); end; end; CloseClipboard; end;

Rispondi quotando