寻找一个简单的Delphi图形组件

3

我正在寻找一个Delphi图形组件,具有以下特点:

  • 允许以不同的字体类型、大小和颜色绘制文本
  • 允许选择先前绘制的文本并复制它
  • 在给定的坐标上绘制图像,支持GIF格式会很好
  • 在CPU使用方面非常快

我需要这个组件作为主要的聊天窗口。我不想将其用作文本编辑器。

到目前为止,我已经尝试了两种解决方案:

  • TVirtualStringTree
  • THtml

目前我正在使用THtml。它表现得相当不错,但由于以下两个原因,它有点慢:

  • 它支持我这种情况下不必要的许多功能
  • 每次我想向其中添加一些内容时,都必须重新加载整个内容

在我没有其他选择之前,我真的不想进入其源代码并对其进行修改。所以也许你们中的某些人知道一些好的轻量级组件,我可以使用它来替代吗?

3个回答

2

看一下TRichView。它派生自TCustomControl,因此没有外部依赖。这是一个第三方商业组件,但非常好用。Skype Win客户端使用它。


谢谢Mihaela。我曾经几次来过这个网站,总觉得这不适合我...但也许我错了,所以我会试一试。 - Wodzu
试试吧,它真的非常强大。我曾经将它用作报告“引擎”。您可以在TRichView上绘制任何东西,包括表格、图像等。但它也是一个完整的富文本编辑器,就像迷你版的Word一样。祝好运! - Mihaela

1

使用 TRichEdit 怎么样?这个组件应该可以轻松实现你提到的大部分功能。

关于插入位图,请参考 Delphi 3000 上的文章


感谢@Smasher的回答。我尝试添加位图,它可以工作。但是我不认为TRichEdit正是我想要的。它有一个闪烁的光标(因为它是一个文本编辑器),并且只允许我添加位图。也许这两个问题可以解决,但不像我希望的那样直截了当。但如果没有其他人给我更好的提示,我将把它标记为答案。 - Wodzu
1
我不确定你是否能找到完全符合你需求的东西。关于光标:http://delphi.about.com/cs/adptips2003/a/bltip0703_5.htm。而且GIF组件肯定是可用的。 - jpfollenius
我找到了这个链接:http://www.mombu.com/programming/html/t-how-to-add-gif-picture-to-memo-or-richedit-in-bcb-801097.html,但正如我之前所说的那样,它并不是很直接。 - Wodzu
你可以使用 TGIFImage 将其转换为位图。 - jpfollenius
顺便说一句:我不想说服您使用“TRichEdit”。我只是认为您提到的问题是可以解决的。如果您找到了更好的组件,那太好了! - jpfollenius
没关系,Smasher。我只是希望能得到一些建议。你看,当我将GIF转换为位图时,可能会失去透明度,而且肯定会失去动画... - Wodzu

1
你考虑过使用TWebBrowser吗?
至少它可以满足你的所有需求...

谢谢您的回答,但我担心它会像THtml一样工作:每次我想添加一些内容时,我必须重新加载整个内容。 - Wodzu
这取决于如何修改内容。您可以直接访问DOM或调用JavaScript来添加内容,而无需刷新整个内容。 - Wouter van Nifterick
确实,Wouter,我没有想过。 - Wodzu
1
在这篇文章写作的时候(2011年),这基本上意味着与Internet Explorer进行交互。如今(2023年),TWebBrowser还包装了基于Chromium的Edge浏览器。好得多。快速,功能齐全,甚至支持硬件加速。 - Wouter van Nifterick

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接