Ich habe schon reichlich gegoogelt, habe aber noch keine befriedigende Lösung gefunden...
Auf einer Form habe ich zwei VirtualExplorerListViewEx Komponenten, die unterschiedliche Ordner anzeigen.
Wenn Drag&Drop aktiviert ist, lassen sich Dateien zwischen den Ordnern verschieben.
Soweit so gut.
Ich möchte nun aber Dateien kopieren, ohne auf der Tastatur [Strg] zu drücken.
Dazu habe ich im Ereignis onDragOver Effect:= DROPEFFECT_COPY; gesetzt.
Trotzdem findet immer ein Move statt.
Auch wenn ich im Ereignis onDragDrop manuell kopiere...
Delphi-Quellcode:
procedure TForm1.VST1DragDrop(
Sender: TBaseVirtualTree; Source: TObject; DataObject: IDataObject;
Formats: TFormatArray; Shift: TShiftState; Pt: TPoint;
var Effect: Integer; Mode: TDropMode);
begin
// Effect:= DROPEFFECT_COPY;
if (Sender = VST1) and (Source = VST2)
then begin
Caption:= (VST2.SelectedPaths[0]);
CopyFileTo(VST2.SelectedPaths[0],
VST1.RootFolderCustomPath + '\'
+ VST2.SelectedFiles[0]);
end;
end;
.. wird anschließend von den VSTs noch das Move ausgeführt.
Was habe ich vergessen???