Pregunta

En mi programa Delphi quiero mostrar información generada por la aplicación. Nada especial, solo 2 columnas de texto con partes de palabras codificadas por colores.
Creo que básicamente tengo dos opciones:

  1. HTML en un navegador web
  2. RTF en un TRichEdit.

HTML es más estándar, pero parece cargar más lento, y tuve que lidiar con El molesto sonido de clic . ¿Sigue siendo RTF una buena alternativa en estos días?

editar:
Buena pregunta de dangph: " ¿Qué sucede con los documentos generados? & Quot;
Los documentos se descartarán después de verlos.

¿Fue útil?

Solución

También usaría HTML. Además, acaba de obtener una respuesta para el hacer clic en TWebBrowser .

Si prefiere no usar TWebBrowser, eche un vistazo a los Componentes de visualización HTML de Dave Baldwin.

Otros consejos

Yo votaría por HTML.

Creo que está más orientado al futuro. La velocidad no me importaría.

La cuestión de HTML o RTF puede ser irrelevante. Si solo se usan con fines de visualización, entonces el formato del archivo no importa. Realmente es solo una representación interna. (¿Se está guardando algún archivo en el disco?) Creo que la pregunta que debe hacerse es cuál soluciona el problema con la menor cantidad de trabajo.

Me preocuparía un poco que el control del navegador esté cambiando todo el tiempo. Dudo que el control de riqueza cambie mucho. Me inclino por el control richedit porque creo que hay menos que podría ir mal con él. Pero probablemente no sea gran cosa de ninguna manera.

¿Ha considerado hacer un propietario dibujar TListView?

Yo también votaría por HTML.

Comenzamos una aplicación hace un tiempo ... Queríamos

  

muestra información generada por la aplicación. Nada lujoso, solo ...

(¿oyes sonar las campanas ???)

Entonces queríamos mostrar más información y darle un estilo aún más ... ... alguien decidió que RTF ya no es suficiente, pero para compatibilidad con versiones anteriores pasamos a MS Word a través de OLE-Server. Ese fue el final de hablar más sobre el rendimiento.

Creo que si hubiéramos hecho eso en HTML sería mucho más rápido ahora.

RTF es mucho más fácil de manejar, ya que el control TRichEdit forma parte de cada instalación de Windows y tiene una sobrecarga mucho menor que TWebBrowser (que básicamente incluye una versión ActiveX de Internet Explorer en su aplicación).

TRichEdit también es mucho más fácil de usar para agregar texto y formato mediante programación. El uso de SelStart y SelLength, junto con los Atributos de texto, hace que la adición de negrita y cursiva, la configuración de diferentes fuentes, etc. sea simple. Y, como dijo Re0sless, TRichEdit se puede imprimir fácilmente, mientras que TWebBrowser hace que sea más complicado hacerlo.

Votaría RTF ya que no me gusta el hecho de que TWebBrowser use Internet Explorer, ya que en el pasado hemos tenido problemas con esto en computadoras bien cerradas.

También TRichEdit tiene un método de impresión integrado, en el que debes hacer todo tipo de problemas para que el TWebBrowser imprima.

Nadie parece haber mencionado un componente de informes todavía. Sí, es una exageración en este momento, pero si lo usa de todos modos (y quizás ya tenga algunos informes para hacer en su aplicación, por lo que el componente ya está incluido), puede mostrar la vista previa y permitir imprimir / exportar a pdf Más tarde, si tiene algún sentido. Además, si más tarde decides que quieres tener una pantalla más elegante, no hay nada que te retenga.

Si tanto HTML como RTF no satisfacen sus necesidades, también puede usar un componente de texto / edición de código abierto que admita palabras para colorear o crear su propio componente de edición basado en un componente Delphi.

Otra alternativa al navegador HTML es el " Navegador web incorporado " componentes que utilicé algunos proyectos para mostrar documentos html al usuario. Usted tiene control total sobre el navegador incorporado, y no recuerdo ningún clic cuando se carga una página.

Yo también voto por HTML

RTF es bueno solo para su editor, de lo contrario, será mejor que se vuelva estándar.

RTF ofrece algunas opciones útiles de edición de texto como el tabulador horizontal que no están disponibles en HTML. La detección automática de hipervínculos también es un buen extra. Pero creo que preferiría HTML, si estas características no son necesarias.

Voto por HTML.

  • Más fácil de generar mediante programación.
  • Ampliamente compatible.
  • Como no necesita las capacidades WYSIWYG, creo que las ventajas de HTML triunfan sobre RTF. Además, si surge la necesidad de exportar datos generados para una edición posterior similar a WP, recuerde que los principales procesadores de texto pueden abrir y convertir archivos HTML.

Use HTML, pero con ' Delphi Wrapper para Chromium Embedded 'por Henri Gourvest , Chromium Embedded utiliza el núcleo que alimenta Google Chrome .

No use TWebBrowser, estoy sufriendo de todos los programas que usan el control web de IE: la fuente es demasiado pequeña en mi monitor de 22 'con una resolución de 1920x1080, uso Windows 7 y el DPI de mi sistema es 150% (XP modo), intenté todo para ajustar tratando de arreglar eso, no tuve suerte ...

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top