2010-12-14 54 views
11

我目前在TLabel中顯示一些文本。現在我想強調文本中的某些詞語,方法是在加粗斜體中顯示它們。 Delphi中推薦的方法是什麼?有沒有可以顯示簡單HTML或標記的TLabel類組件? 我想象像這樣的代碼:在Delphi中的標籤中顯示簡單標記

label.text:='This information is <b>important</b>'; 

我使用德爾福2010

回答

11

JvHTLabel在JVCL將會很好地完成這個技巧。從http://jvcl.delphi-jedi.org/

+0

很棒的建議。我沒有最終使用它,因爲與TLabel不同,如果要顯示多行,JvHTLabel不支持wordwrap。否則它工作。 – awmross 2010-12-15 01:47:28

4

檢查THtmlViewer成分是免費的,用delphi兼容2010

+1

我發現這有點龐大,用作單TLabel(它的工作原理,但我無法弄清楚如何使它像TLabel一樣透明)。最後,我刪除了表單上的所有組件,並用一個HTMLViewer組件替換了整個組件,並使用HTML完成了佈局/標記。 – awmross 2010-12-15 01:52:34

1

一些想法:

  1. 查看ExtCtrls中的TLinkLabel。 它可以讓你添加鏈接..它繪製下劃線鏈接的部分。也許你可以竊取代碼並添加對其他標籤的支持,如<b><i><strong><em>

  2. 您可以使用TRichEdit組件。它不是HTML,如您所描述的,但它應該做格式化您的文本的訣竅。

  3. 從此page使用TjanMarkupLabel。 「TjanMarkupLabel是TGraphicControl後裔呈現在HTML風格的Text屬性支持標籤:粗體,斜體,下劃線,字體(外觀,大小和顏色),並休息

+0

Tjan組件相當古老 - 遠在Unicode Delphi之前。 – 2010-12-14 06:42:55

+0

TLinkLabel是Windows'SysLink'的一個包裝,並沒有我可以告訴支持樣式。你所能做的就是超鏈接。 – 2010-12-14 09:39:41

+0

Tjan標籤可以在Torry's找到,上面的鏈接已經死亡。 – Fr0sT 2014-08-06 16:54:46

2

還有一個下載全庫:

德爾福標記標籤

德爾福標記標籤是德爾福的標籤組件,支持一些類似HTML的標籤顯示的文本格式。其中,它支持超鏈接,標籤,字體大小,顏色和樣式的標籤。完整的標籤列表可以在隨附的測試工具中找到。

http://www.infintuary.org/stlabel.php 單個pas文件,包括編譯演示。某些格式化是通過自制標籤實現的,因此它不會是傳統的HTML。沒有透明度。

+0

用TMDLabel = class(TGraphicControl)替換'TMDLabel = class(TCustomControl)'使得這個標籤能夠作爲背景(例如在MDI父項上)。 – Fr0sT 2014-10-21 12:13:45