8

在我的 Delphi 程序中,我想显示应用程序生成的一些信息。没有什么花哨的,只有 2 列文本,部分单词用颜色编码。
我想我基本上有两个选择:

  1. TWebbrowser 中的 HTML
  2. TRichEdit 中的 RTF。

HTML 更标准,但似乎加载速度较慢,我不得不处理The Annoying Click Sound。如今,RTF 仍然是一个不错的选择吗?

编辑:
来自 dangph 的好问题:“生成的文档会怎样?”
文件在查看后将被丢弃。

4

13 回答 13

12

我会投票给 HTML。

我认为它更面向未来。速度与我无关。

于 2009-03-05T11:06:51.280 回答
8

HTML 或 RTF 的问题可能无关紧要。如果它们仅用于显示目的,则文件格式无关紧要。它实际上只是一种内部表示。(是否有任何文件甚至被保存到磁盘?)我认为要问的问题是哪一个以最少的工作量解决了问题。

我会稍微担心浏览器控件一直在变化。我怀疑richedit控件会发生很大变化。我会倾向于 Richedit 控件,因为我认为它不会出错。但这两种方式可能都不是什么大问题。

你有没有考虑过做一个ownerdraw TListView?

于 2009-03-05T12:22:49.057 回答
6

我也会使用 HTML。此外,您刚刚得到了 TWebBrowser 中点击声音的答案

如果您不想使用 TWebBrowser,请查看 Dave Baldwin 的免费HTML 显示组件

于 2009-03-05T11:21:57.487 回答
4

我也会投票给 HTML。

我们前段时间启动了一个应用程序......我们想要

显示应用程序生成的一些信息。没什么好看的,只是...

(你听到铃声了吗???)

然后我们想显示更多信息并对其进行更多样式设置…………有人认为 RTF 已经不够了,但是为了向后兼容,我们转向 MS Word over OLE-Server。这就是谈论性能的结束。

我认为如果我们在 HTML 中做到这一点,现在会快得多。

于 2009-03-05T12:42:58.367 回答
4

RTF 更容易处理,因为 TRichEdit 控件是每个 Windows 安装的一部分,并且比 TWebBrowser(它基本上将 Internet Explorer 的 ActiveX 版本嵌入到您的应用程序中)具有更少的开销。

TRichEdit 也更容易用于以编程方式添加文本和格式。使用 SelStart 和 SelLength 以及文本属性,使添加粗体和斜体、设置不同的字体等变得简单。而且,正如 Re0sless 所说,TRichEdit 可以轻松打印,而 TWebBrowser 使打印变得更加复杂。

于 2009-03-05T16:03:30.023 回答
2

我会投票给 RTF,因为我不喜欢 TWebBrowser 使用 Internet Explorer 的事实,因为过去我们在紧密锁定的计算机上遇到过这个问题。

此外,TRichEdit 还内置了一个打印方法,您必须在其中进行各种操作才能让 TWebBrowser 打印。

于 2009-03-05T13:46:37.467 回答
2

似乎还没有人提到报告组件。是的,它现在有点矫枉过正,但如果你仍然使用它(也许你已经在你的应用程序中做了一些报告,所以组件已经包含在内)你可以只显示预览并允许打印/导出为 pdf稍后,如果它有任何意义。此外,如果您后来决定想要一个更精美的显示器,那么没有什么能阻止您。

于 2010-01-17T12:13:26.147 回答
1

如果 HTML 和 RTF 都不能满足您的需求,您还可以使用支持着色文字的开源文本/编辑组件或基于 Delphi 组件创建自己的编辑组件。

于 2009-03-05T11:07:25.103 回答
1

HTML 浏览器的另一个替代方案是“嵌入式 Web 浏览器”组件,我使用了一些项目来向用户显示 html 文档。您可以完全控制嵌入式浏览器,加载页面时我不记得有任何点击。

于 2009-03-05T17:01:29.387 回答
1

我也投票给 HTML

RTF 只对它的编辑器有用,否则你最好去标准。

于 2009-03-21T18:21:05.813 回答
0

RTF 提供了一些有用的文本编辑选项,例如 HTML 中没有的水平制表符。自动超链接检测也是一个不错的附加功能。但我想如果不需要这些功能,我会更喜欢 HTML。

于 2009-03-21T18:00:14.087 回答
0

我投票支持 HTML。

  • 更容易以编程方式生成。
  • 广泛支持。
  • 由于您不需要所见即所得的功能,我认为 HTML 的优势胜过 RTF。此外,如果需要导出生成的数据以进行进一步的类似 WP 的编辑,请记住主要的文字处理器可以打开和转换 HTML 文件。
于 2011-11-16T08:24:43.793 回答
0

使用 HTML,但通过Henri Gourvest的“ Delphi Wrapper for Chromium Embedded ” ,Chromium Embedded 使用了为Google Chrome提供支持的核心。

不要使用 TWebBrowser,我正在遭受所有使用 IE 网络控制的程序的困扰 - 我的 22 英寸显示器上的字体太小,分辨率为 1920x1080,我使用的是 Windows 7,我的系统的 DPI 是 150%(XP 模式),我尝试了一切来调整试图解决这个问题,没有运气......

于 2011-11-16T17:38:52.350 回答