Domanda

Nel mio programma Delphi voglio visualizzare alcune informazioni generate dall'applicazione. Niente di speciale, solo 2 colonne di testo con parti di parole codificate a colori.
Penso di avere sostanzialmente due opzioni:

  1. HTML in un TWebbrowser
  2. RTF in un TRichEdit.

L'HTML è più standard, ma sembra caricarsi più lentamente, e ho dovuto fare i conti con Il suono del clic fastidioso . Oggi RTF è ancora una buona alternativa?

modifica
Buona domanda da dangph: " Cosa succede ai documenti generati? & Quot;
I documenti verranno eliminati dopo la visualizzazione.

È stato utile?

Soluzione

Vorrei anche usare HTML. Inoltre, hai appena ricevuto una risposta per il suono del clic in TWebBrowser .

Se preferisci non utilizzare TWebBrowser, dai un'occhiata ai HTML Display Components di Dave Baldwin .

Altri suggerimenti

Vorrei votare per HTML.

Penso che sia più orientato al futuro. La velocità non mi riguarderebbe.

La domanda di HTML o RTF potrebbe essere irrilevante. Se vengono utilizzati solo a scopo di visualizzazione, il formato del file non ha importanza. È davvero solo una rappresentazione interna. (Vengono salvati dei file sul disco?) Penso che la domanda da porsi sia quale si risolva il problema con la minima quantità di lavoro.

Sarei leggermente preoccupato che il controllo del browser cambi continuamente. Dubito che il controllo Richedit cambierà molto. Mi spingerei verso il controllo Richedit perché penso che ci sia meno che possa andare storto. Ma probabilmente non è un grosso problema in entrambi i casi.

Hai pensato di fare un prelievo dal proprietario TListView?

Vorrei votare anche per HTML.

Abbiamo avviato un'app qualche tempo fa ... Volevamo

  

visualizza alcune informazioni generate dall'applicazione. Niente di speciale, solo ...

(senti le campane suonare ???)

Quindi volevamo visualizzare più informazioni e modellarle ancora di più .... ... qualcuno ha deciso che RTF non è più sufficiente, ma per compatibilità con le versioni precedenti siamo passati a MS Word su OLE-Server. Quella era la fine di parlare più della performance.

Penso che se lo avessimo fatto in HTML, ora sarebbe molto più veloce.

RTF è molto più facile da gestire, poiché il controllo TRichEdit fa parte di ogni singola installazione di Windows e ha un sovraccarico molto inferiore rispetto a TWebBrowser (che fondamentalmente incorpora una versione ActiveX di Internet Explorer nella tua app).

TRichEdit è anche molto più facile da usare per aggiungere a livello di codice testo e formattazione. L'uso di SelStart e SelLength, insieme al testo Attributes, semplifica l'aggiunta di grassetto e corsivo, l'impostazione di caratteri diversi, ecc. E, come ha detto Re0sless, TRichEdit può essere facilmente stampato mentre TWebBrowser rende più complicato farlo.

Vorrei votare RTF perché non mi piace il fatto che TWebBrowser utilizzi Internet Explorer, poiché in passato abbiamo avuto problemi con questo su computer strettamente bloccati.

Anche TRichEdit ha un metodo di stampa integrato, in cui come devi fare ogni sorta di pasticciare per far stampare TWebBrowser.

Nessuno sembra aver ancora menzionato un componente di reporting. Sì, è eccessivo in questo momento, ma se lo usi comunque (e forse hai già alcuni rapporti da fare nella tua app, quindi il componente è già incluso) puoi semplicemente visualizzare l'anteprima e consentire di stampare / esportare in pdf più tardi, se ha qualche senso. Inoltre, se in seguito decidi di voler avere un display più elaborato, non c'è nulla che ti blocchi.

Se sia HTML che RTF non soddisfano le tue necessità, puoi anche utilizzare un componente di modifica / testo open source che supporti le parole da colorare o creare il tuo componente di modifica basato su un componente Delphi.

Un'altra alternativa al browser HTML è il " Browser Web incorporato " componenti che ho usato alcuni progetti per la visualizzazione di documenti HTML all'utente. Hai il controllo completo sul browser incorporato e non ricordo alcun clic quando viene caricata una pagina.

Voto anche per HTML

RTF è buono solo per il suo editor, altrimenti è meglio che diventi standard.

RTF offre alcune utili opzioni di modifica del testo come il tabulatore orizzontale che non sono disponibili in HTML. Il rilevamento automatico dei collegamenti ipertestuali è anche un bel extra. Ma penso che preferirei HTML, se queste funzionalità non sono richieste.

Voto per HTML.

  • Più facile da generare a livello di codice.
  • Ampiamente supportato.
  • Dal momento che non hai bisogno delle funzionalità WYSIWYG, penso che i vantaggi dell'HTML siano superiori a RTF. Inoltre, se dovesse emergere la necessità di esportare dati generati per ulteriori modifiche di tipo WP, ricordare che i principali elaboratori di testi possono aprire e convertire file HTML.

Utilizza HTML, ma con " Delphi Wrapper per Chromium Embedded "di Henri Gourvest , Chromium embedded utilizza il core che alimenta Google Chrome .

Non usare TWebBrowser, soffro di tutti i programmi che usano il controllo web di IE - il font è troppo piccolo sul mio monitor da 22 'con una risoluzione di 1920x1080, uso Windows 7 e il DPI del mio sistema è del 150% (XP modalità), ho provato di tutto per modificare cercando di risolvere il problema, senza fortuna ...

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top