Einzelnen Beitrag anzeigen

Benutzerbild von writeln
writeln

Registriert seit: 30. Aug 2004
Ort: Hamburg
28 Beiträge
 
#3

Re: Copy statt Move zwischen zwei VSTs

  Alt 10. Sep 2008, 11:48
Jooo! das war ein guter Tipp!

Wenn im onDragDrop Event Effect auf DROPEFFECT_NONE eingestellt wird, klappt es auch mit dem Kopieren per selbst definierter Routine, bzw das anschließende Move unterbleibt.
Genau so soll es sein.

Vielen Dank Toms!


Delphi-Quellcode:
procedure TForm1.VST1DragDrop(
  Sender: TBaseVirtualTree; Source: TObject; DataObject: IDataObject;
  Formats: TFormatArray; Shift: TShiftState; Pt: TPoint;
  var Effect: Integer; Mode: TDropMode);
begin
  if (Sender = VST1) and (Source = VST2)
  then begin
    Caption:= (VST2.SelectedPaths[0]);
    CopyFileTo(VST2.SelectedPaths[0],
              VST1.RootFolderCustomPath + '\'
              + VST2.SelectedFiles[0]);

  end;
  Effect:= DROPEFFECT_NONE;
  VST1.Active:= false;
  VST1.Active:= true;
end;

procedure TForm1.VST1DragOver(
  Sender: TBaseVirtualTree; Source: TObject; Shift: TShiftState;
  State: TDragState; Pt: TPoint; Mode: TDropMode; var Effect: Integer;
  var Accept: Boolean);
begin
  Accept:= true;
end;

procedure TForm1.VST2DragOver(Sender: TBaseVirtualTree; Source: TObject;
  Shift: TShiftState; State: TDragState; Pt: TPoint; Mode: TDropMode;
  var Effect: Integer; var Accept: Boolean);
begin
  Accept:= true;
end;
Sascha
...und ich sach noch: "drück nich auf F9"...
  Mit Zitat antworten Zitat