如何在Delphi中显示格式化(颜色,样式等)日志?

如何在Delphi中显示格式化(颜色,样式等)日志?,第1张

概述我需要在Delphi 2009中显示格式化的日志.格式化不必实现说html的所有功能,而是一个小的子集,例如颜色,字体样式等 目前我正在使用TRichEdit和我自己的专有标签,例如这是蓝色的.由于无法直接访问RTF文本,因此将其与TRichEdit配合使用非常复杂.例如,要将文本着色为蓝色,我必须: >解析附加文本,提取标签,确定需要格式化的文本以及如何格式化. >选择文字. >应用格式. >取 我需要在Delphi 2009中显示格式化的日志.格式化不必实现说HTML的所有功能,而是一个小的子集,例如颜色,字体样式等

目前我正在使用TRichEdit和我自己的专有标签,例如这是蓝色的.由于无法直接访问RTF文本,因此将其与TRichEdit配合使用非常复杂.例如,要将文本着色为蓝色,我必须:

>解析附加文本,提取标签,确定需要格式化的文本以及如何格式化.
>选择文字.
>应用格式.
>取消选择文本并将选择移动到文本的末尾,为下一个附加做好准备.

这一切都是黑客和缓慢的.您是否知道使用TRichEdit或其他更适合工作的控件更好(更快)的方法?

我应该提一下,我考虑过在TWebbrowser中使用HTML.这种方法的问题是日志可以是1到100000行的任何地方.如果我使用普通的HTML查看器,我需要每次都设置整个文本而不是简单地附加它.

此外,当我向其添加行时,需要实时更新日志.不只是从文件中读取并显示一次.

解决方法 简单的解决方案:使用带有自定义绘制方法的TListBox,并使用仅包含基本信息的对象将日志条目放在TObjectList中,而不是格式化(这将在演示代码中应用).

或使用虚拟字符串列表/ VirtualTreeView组件.只渲染需要显示的项目,这样可以节省资源.

总结

以上是内存溢出为你收集整理的如何在Delphi中显示格式化(颜色,样式等)日志?全部内容,希望文章能够帮你解决如何在Delphi中显示格式化(颜色,样式等)日志?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1272964.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存