Einzelnen Beitrag anzeigen

jbg

Registriert seit: 12. Jun 2002
3.485 Beiträge
 
Delphi 10.1 Berlin Professional
 
#6

AW: Drag&Drop aus neuem Outlook

  Alt 20. Mär 2025, 20:22
Microsoft habe beim neuen Outlook nicht nur beim Drag&Drop vom MSG-Format zum EML-Format gewechselt, sondern nutzt nun asynchrones Drag&Drop, das so gut wie keine (ältere) Anwendung implementiert.

Die JVCL-Komponente TJvDropTarget wurde im Dezember um das asynchrone Drag&Drop erweitert. Der entsprechende Git Commit ist:
https://github.com/project-jedi/jvcl...795e4f7ddc067a

Ein aufs wesentliche reduziertes Beispiel mit der TJvDragTarget Komponente:
Delphi-Quellcode:
procedure TForm1.JvDropTargetDragAccept(Sender: TJvDropTarget; var Accept: Boolean);
begin
  Accept := (Sender.GetFilenames(nil) > 0) or // CF_HDROP
            (Sender.GetFileDescrCount > 0) or // CF_FILEDESCRIPTOR
            Sender.IsAsyncHDrop // "Neues Outlook" (WebApp) - Gültigkeit muss im OnDragDrop geprüft werden
end;

procedure TForm1.JvDropTargetDragDrop(Sender: TJvDropTarget;
  var Effect: TJvDropEffect; Shift: TShiftState; X, Y: Integer);
var
  List: TStrings;
begin
  // ...
  // GetFilenames bei Sender.IsAsyncHDrop = True funktioniert erst im OnDragDrop
  Sender.GetFilenames(List);
  // Dateien auf *.eml Suffix prüfen ...
end;

Geändert von jbg (20. Mär 2025 um 20:31 Uhr)
  Mit Zitat antworten Zitat