In meinem Delphi-Programm möchte ich einige Informationen anzeigen, die von der Anwendung generiert wurden. Nichts Besonderes, nur 2 Spalten Text mit Teilen von Wörtern farbcodiert.
Ich denke, ich habe grundsätzlich zwei Möglichkeiten:
HTML ist mehr Standard, aber scheint langsamer zu laden, und ich musste mich mit dem störenden Klick-Sound befassen. Ist RTF heute noch eine gute Alternative?
bearbeiten:
Gute Frage von dangph: "Was passiert mit den generierten Dokumenten?"
Die Dokumente werden nach dem Ansehen verworfen.
Ich würde auch HTML verwenden. Außerdem hast du gerade eine Antwort für den Klick-Sound in TWebBrowser erhalten.
Wenn Sie TWebBrowser nicht verwenden möchten, werfen Sie einen Blick auf Dave Baldwins kostenlose HTML-Display-Komponenten .
Ich würde für HTML stimmen.
Ich denke, es ist zukunftsorientierter. Die Geschwindigkeit geht mich nichts an.
Die Frage von HTML oder RTF kann irrelevant sein. Wenn sie nur für Anzeigezwecke verwendet werden, spielt das Dateiformat keine Rolle. Es ist wirklich nur eine interne Darstellung. (Sind irgendwelche Dateien sogar auf der Festplatte gespeichert?) Ich denke, die Frage ist, welche das Problem mit dem geringsten Aufwand löst.
Ich wäre etwas besorgt, dass sich die Browsersteuerung ständig ändert. Ich bezweifle, dass sich die Richedit-Kontrolle viel ändern wird. Ich würde mich der Richedit-Kontrolle beugen, weil ich denke, dass es weniger gibt, was damit schiefgehen könnte. Aber es ist wahrscheinlich keine große Sache so oder so.
Haben Sie erwogen, TListView OwnerDraw zu machen?
Ich würde auch für HTML stimmen.
Vor einiger Zeit haben wir eine App gestartet ... Wir wollten
zeigt einige Informationen an, die von der Anwendung generiert wurden. Nichts Besonderes, nur ...
(hören Sie die Glocken läuten ???)
Dann wollten wir mehr Informationen zeigen und es noch mehr stylen .... ... hat sich jemand entschieden, dass RTF nicht mehr ausreicht, aber aus Gründen der Abwärtskompatibilität sind wir über den OLE-Server zu MS Word gewechselt. Das war das Ende des Sprechens über die Performance.
Ich denke, wenn wir das in HTML getan hätten, wäre es jetzt viel schneller.
RTF ist viel einfacher zu handhaben, da das TRichEdit-Steuerelement Teil jeder einzelnen Windows-Installation ist und viel weniger Overhead hat als TWebBrowser (das im Grunde eine ActiveX-Version von Internet Explorer in Ihre App einbettet).
TRichEdit ist auch viel einfacher zu verwenden, um Text und Formatierung programmgesteuert hinzuzufügen. Mit SelStart und SelLength können Sie Fett- und Kursivschrift, verschiedene Schriftarten usw. einfach hinzufügen. Und wie Re0lessless sagte, kann TRichEdit leicht gedruckt werden, während TWebBrowser es komplizierter macht.
Ich würde RTF wählen, weil mir die Tatsache, dass TWebBrowser den Internet Explorer benutzt, nicht gefällt, da wir in der Vergangenheit Probleme damit hatten, die Computer zu sperren.
Auch TRichEdit hat eine Druckmethode eingebaut, wo Sie alle möglichen Dinge tun müssen, um den TWebBrowser zum Drucken zu bringen.
Bisher scheint noch niemand eine Berichtskomponente erwähnt zu haben. Ja, es ist momentan übertrieben, aber wenn Sie es trotzdem verwenden (und vielleicht haben Sie bereits Berichte in Ihrer App, so dass die Komponente bereits enthalten ist), können Sie einfach die Vorschau anzeigen und das Drucken / Exportieren nach PDF erlauben später, wenn es einen Sinn ergibt. Auch wenn Sie später entscheiden, dass Sie ein schickeres Display haben möchten, hält Sie nichts davon ab.
Eine weitere Alternative zum HTML-Browser sind die " Embedded Web Browser " -Komponenten, für die ich ein paar Projekte zum Anzeigen von HTML verwendet habe Dokumente für den Benutzer. Sie haben die vollständige Kontrolle über den eingebetteten Browser und ich erinnere mich an keine Klicks, wenn eine Seite geladen wird.
Ich stimme für HTML.
Verwenden Sie HTML, aber mit ' Delphi Wrapper für Chromium eingebettet ' von Henri Gourvest , verwendet Chromium den Kern, der Google Chrome .
Benutze den TWebBrowser nicht, ich leide an allen Programmen, die das IE-Web-Control benutzen - die Schrift ist zu klein auf meinem 22 'Monitor mit einer Auflösung von 1920x1080, ich benutze Windows 7 und die DPI meines Systems ist 150% (XP Modus), habe ich versucht alles zu zwicken versuchen, das zu beheben, kein Glück ...
Tags und Links html delphi rtf page-layout