Einzelnen Beitrag anzeigen

Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
905 Beiträge
 
Delphi 12 Athens
 
#2

AW: Thinfinity VirtualUI: Datei speichern/herunterladen

  Alt 15. Dez 2021, 13: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.
Being smart will count for nothing if you don't make the world better. You have to use your smarts to count for something, to serve life, not death.

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