Pergunta

No meu programa Delphi Eu quero mostrar algumas informações geradas pela aplicação. nada sofisticados, a apenas 2 colunas de texto com partes de palavras código de cores.
Eu acho que tem basicamente duas opções:

  1. HTML em um TWebBrowser
  2. RTF em um TRichEdit.

HTML é mais padrão, mas parece carregar mais lento, e eu tive que lidar com O Annoying Clique em Som . É RTF ainda uma boa alternativa nos dias de hoje?

Editar:
Boa pergunta de dangph: "O que acontece com os documentos gerados?"
Os documentos serão descartados após a exibição.

Foi útil?

Solução

Eu também utilizar HTML. Além disso, você só tem uma resposta para a som de clique em TWebBrowser .

Se você preferir não usar TWebBrowser, dê uma olhada de Dave Baldwin livre HTML mostrar componentes .

Outras dicas

Eu votaria em HTML.

Eu acho que é mais orientado para o futuro. A velocidade não iria me preocupa.

A questão do HTML ou RTF pode ser irrelevante. Se eles são usados ??apenas para fins de exibição, então o formato de arquivo não importa. É realmente apenas uma representação interna. (Quaisquer arquivos, mesmo sendo salvos no disco?) Eu acho que a pergunta a fazer é qual resolve o problema com a menor quantidade de trabalho.

Eu seria um pouco preocupados que o controle de navegador está mudando o tempo todo. Eu duvido que o controle richedit vai mudar muito. Eu inclinar-se para o controle richedit porque eu acho que há menos o que poderia dar errado com ele. Mas ele provavelmente não é um grande negócio de qualquer maneira.

Você já considerou fazer um TListView ownerdraw?

Eu votaria em HTML, também.

Nós começamos um app há um tempo atrás ... Queríamos

exibir algumas informações geradas pela aplicação. Nada extravagante, apenas ...

(você ouve os sinos anel ???)

Então nós queríamos exibir mais informações e estilo ainda mais .... ... alguém decidiu que RTF não é mais suficiente, mas para compatibilidade com versões anteriores passamos para MS Word sobre OLE-Server. Esse foi o fim de falar sobre o desempenho mais.

Eu acho que se nós teria feito isso em HTML seria muito mais rápido agora.

RTF é muito mais fácil de lidar, como o controle TRichEdit é parte de cada única instalação do Windows, e tem muito menos sobrecarga do que TWebBrowser (que é basicamente a incorporação de uma versão ActiveX do Internet Explorer em seu aplicativo).

TRichEdit também é muito mais fácil de usar para programaticamente adicionar texto e formatação. Usando o SelStart e SelLength, juntamente com os atributos de texto, faz a adição negrito e itálico, definição de fontes diferentes, etc. simples. E, como Re0sless disse, TRichEdit pode facilmente ser impressa enquanto TWebBrowser torna mais complicada a fazê-lo.

Eu votaria RTF como eu não gosto do fato de TWebBrowser usa o Internet Explorer, como já teve problemas com isso no passado em computadores firmemente bloqueados.

Além disso TRichEdit tem uma construção método de impressão em, onde, como você tem que fazer todos os tipos de mexer para obter o TWebBrowser para imprimir.

Ninguém parece ter mencionado um componente relatando ainda. Sim, é um exagero agora, mas se você usá-lo de qualquer maneira (e talvez você já tem alguns relatórios de fazer no seu aplicativo, de modo que o componente já está incluído) você pode apenas exibir a visualização e permitem imprimir / exportar para pdf depois, se faz qualquer sentido. Além disso, se você decidir mais tarde que você quer ter uma exposição mais extravagante não há nada prendendo você.

Se ambos HTML e RTF não vai satisfazer a sua necessidade, você também pode usar um componente de texto / editar open source que suporta colorir palavras ou criar seu próprio componente de edição com base em um componente de Delphi.

Outra alternativa para o navegador HTML é a " Incorporado Web Browser " componentes que eu usei alguns projetos para a exibição de documentos HTML para o usuário. Você tem controle total sobre o navegador embutido, e eu não me lembro de todos os cliques quando uma página é carregada.

Eu voto para HTML também

RTF é bom apenas para o seu editor, outra coisa, então você iria melhor padrão.

RTF ofertas algum texto útil opções como tabulação horizontal que não estão disponíveis em HTML editando. A detecção automática de hiperlink é também uma agradável extra. Mas eu acho que eu preferiria HTML, se esses recursos não são necessários.

Eu voto para HTML.

  • Mais fácil para gerar programaticamente.
  • amplamente apoiada.
  • Uma vez que você não precisa de capacidades WYSIWYG Acho vantagens HTML trunfo RTF. dados Além disso, deve a necessidade de exportação geradas para mais longe, WP-like editar surgir, lembre-se que o maior processador de texto pode abrir e arquivos de converter HTML.

Use HTML, mas com ' Delphi Wrapper para O cromo incorporado ' por usos Henri Gourvest , cromo incorporados no núcleo que alimenta Google Chrome .

Não use TWebBrowser, eu sou o sofrimento de todos os programas que usam o controle web do IE - a fonte é muito pequena no meu monitor de 22' com uma resolução de 1920x1080, eu uso o Windows 7 e DPI do meu sistema é 150% (XP mode), Eu tentei de tudo para ajustar a tentar corrigir isso, sem sorte ...

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top