Hallo zusammen,
ich habe ein Programm, das Daten als PDF-Datei ausgibt. Wenn der Benutzer den PDF-Export startet, möchte ich gern anschließend das erzeugte PDF öffnen lassen.
Weiß Jemand von euch wie ich das Plattform unabhängig hinbekommen kann?
Danke und Grüße
AROK
PDF Datei mit externem Programm öffnen
-
-=Freaky=-
- Beiträge: 503
- Registriert: 29. Dezember 2006 22:54
- Wohnort: HL
-
dontinelli
- Beiträge: 146
- Registriert: 22. September 2006 20:53
Du könntest auch den QPrintPreviewDialog benützen. Zwar wird der standartmässig im Voraus angezeigt, aber was spricht dagegen, es mal umgekehrt zu tun?
Oder wie gesagt ein eigenes Tool schreiben...
CHeers
DonTinelli
PS Vielleicht wäre auch das QPrintPreviewWidget passender...
Oder wie gesagt ein eigenes Tool schreiben...
CHeers
DonTinelli
PS Vielleicht wäre auch das QPrintPreviewWidget passender...
Danke, Das werde ich mir mal ansehen.Du könntest auch den QPrintPreviewDialog benützen. Zwar wird der standartmässig im Voraus angezeigt, aber was spricht dagegen, es mal umgekehrt zu tun?
Oder wie gesagt ein eigenes Tool schreiben...
Eine andere Idee, die ich schon hatte, das ganze unter Windows und Linux separat zu handhaben.
Unter Windows herausfinden welches Programm vorhanden ist bzw in der Registry dem Dateityp zugeordnet und es dann aufrufen.
Unter Linux muss ich mir noch was überlegen.
Alternativ dem Benutzer im Settings Dialog das Programm auswählen lassen. (Die einfachste Möglichkeit, aber mit arbeit für den Benutzer)
Am schönsten wäre natürlich wenn QT schon irgendeine Funktion für diesen Fall hätte...
Grüße
AROK
Preview von Mac OS zeigt so ziemlich alles an, auch PDFs, und das deutlich schneller als irgendwas von Adobe. Die meisten User werden irgendwas zum PDF betrachten installiert haben, ausser Win hat wahrscheinlich auch jedes System was von Haus aus dabei.-=Freaky=- hat geschrieben:ich wuesste nicht, dass es sowas wie "default pdf viewer" im system (in welchem auch immer) gibt.
Warum es also nicht dem System überlassen? Qt hat dafür QDesktopServices implementiert, mit dem man dem System sagen kann, es solle doch eine URL öffnen. URL = Uniform Resource Locator, und das hat nichts mit dem Internet zu tun. Das kann genauso eine Dateiangabe auf der Festplatte oder einem Fileserver sein.
QDesktopServices::openUrl(QUrl(myPDFPathFileName)); öffnet unter XP jedenfalls den Acrobat Reader mit dem angegebenen File.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.