Einzelnen Beitrag anzeigen

Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
880 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Thinfinity VirtualUI: Datei speichern/herunterladen

  Alt 15. Dez 2021, 14:36
Ja, die VirtualUI-Doku ist da etwas komisch. Ich kann auch nicht nachvollziehen, wie der Download auf den Benutzer-Rechner beim Speichern überhaupt automatisch passieren soll.

Beim OpenDialog ist das klar: Da wird im Browser per JavaScript ein FileDialog für das lokale System angezeigt, und wenn da die Auswahl und der Upload fertig ist, ist der Original-Aufruf von DelphiOpenDialog.Execute fertig. Das geht beim Speichern nicht - denn wenn der Dialog fertig ist, muss Delphi ja erstmal speichern - und davon bekommt VirtualUI (bzw. das JS im Browser) nichts mit ...

Zur Lösung deines Problems:
Rufe nach dem SaveDialog.Execute und dem Speichern deiner Datei ein VirtualUI.DownloadFile(localfilename, remotefilename, mimetype); auf. Das löschen der temporären Datei (macht aber iirc VirtualUI auch beim Programmende), kannst du ggf. auch über das Event VirtualUI.OnDownloadEnd regeln. Oder du nutzt das, wenn du während des Speicherns einige Elemente in der GUI deaktivieren willst/musst - dann kannst du die da wieder aktivieren.
The angels have the phone box.

Geändert von Gausi (15. Dez 2021 um 14:39 Uhr)
  Mit Zitat antworten Zitat