【发布时间】:2011-05-25 01:35:19
【问题描述】:
我目前正在 TLabel 中显示一些文本。我现在想通过粗体或斜体来强调文本中的某些单词。在 Delphi 中推荐的方法是什么?是否有类似 TLabel 的组件可以显示简单的 HTML 或标记? 我正在想象一些这样的代码:
label.text:='This information is <b>important</b>';
我使用的是 Delphi 2010
【问题讨论】:
标签: delphi
我目前正在 TLabel 中显示一些文本。我现在想通过粗体或斜体来强调文本中的某些单词。在 Delphi 中推荐的方法是什么?是否有类似 TLabel 的组件可以显示简单的 HTML 或标记? 我正在想象一些这样的代码:
label.text:='This information is <b>important</b>';
我使用的是 Delphi 2010
【问题讨论】:
标签: delphi
JVCL 中的 JvHTLabel 可以很好地解决问题。从http://jvcl.delphi-jedi.org/下载整个库
【讨论】:
检查THtmlViewer 组件是否免费且与delphi 2010 兼容。
【讨论】:
还有一个:
德尔福标记标签
Delphi 标记标签是 Delphi 的一个标签组件,它支持一些类似 HTML 的标签来格式化显示的文本。其中,它支持超链接、标签、字体大小、颜色和样式的标签。完整的标签列表可以在随附的测试工具中找到。
http://www.infintuary.org/stlabel.php 单个 pas 文件,包括已编译的演示。一些格式是通过自制标签实现的,因此它不会是经典的 HTML。没有透明度。
【讨论】:
TMDLabel = class (TCustomControl) 替换为TMDLabel = class (TGraphicControl) 使该标签能够用作背景(例如在MDI 父级上)。
如果您已经在使用较新版本的 Delphi(至少是 XE2 版本),您可以查看我的 TDzHTMLText 组件:https://github.com/digao-dalpiaz/DzHTMLText
这个组件是一个支持一些HTML标签的标签,允许你用粗体、斜体、下划线、字体颜色、字体大小、背景颜色、标签对齐、文本对齐(左、中、右)来格式化文本。
检查打印示例:
DzHTMLText component example at design-time
下面的列表描述了所有可能的标签来格式化标签文本:
<A[:abc]></A> - Link
<B></B> - Bold
<I></I> - Italic
<U></U> - Underline
<S></S> - Strike out
<FN:abc></FN> - Font Name
<FS:123></FS> - Font Size
<FC:clColor|$999999></FC> - Font Color
<BC:clColor|$999999></BC> - Background Color
<BR> - Line Break
<L></L> - Align Left
<C></C> - Align Center
<R></R> - Aligh Right
<T:123></T> - Tab
<TF:123></TF> - Tab with aligned break
【讨论】:
一些想法:
在ExtCtrls 中查看TLinkLabel。
它可以让你添加链接..它画下划线的链接部分。也许您可以窃取代码并添加对其他标签的支持,例如<b><i><strong><em>?
您可以使用 TRichEdit 组件。它不是您描述的 HTML,但它应该可以格式化您的文本。
从此page 使用TjanMarkupLabel。 "TjanMarkupLabel 是 TGraphicControl 的后代,它以 HTML 样式呈现其 Text 属性。支持的标签:粗体、斜体、下划线、字体(面、大小和颜色)和中断。"
【讨论】: