TMlSkinHtmlLabel

A label that understands simple HTML markup, so one line can mix colors, bold text and clickable hyperlinks.

Category
Labels & hints
Unit
uMlSkinHtmlLabel.pas
Inherits from
TMlSkinCustomHtmlLabelTMlSkinCustomLabelTMlSkinCustomPanelTMlSkinCustomControl

Notes

  • Write the markup straight into Caption — bold, colors, links — and the control parses and draws it.
  • Clicking a link fires OnHyperLinkClick with the link target, which you can use to open a page or run an action.
  • HyperLinkFontHotColor is the hover color for links; HyperLinkMouseButtons limits which mouse buttons activate them.

Example

From the demo MlSkin.Demo.HtmlLabel&TMlSkinPopupMessage功能演示.v4.x (.dfm form file)

object mlsknhtmlbl1: TMlSkinHtmlLabel
  Left = 18
  Top = 248
  Width = 632
  Height = 433
  AutoInvalidate = True
  Alpha = 0
  AutoSize = False
  Caption = 'TMlSkinHtmlLabel'
  Anchors = [akLeft, akTop, akRight, akBottom]
  Font.Charset = ANSI_CHARSET
  Font.Color = clWindowText
  Font.Height = -13
  Font.Style = []
  ParentFont = False
  OnHyperLinkClick = mlsknhtmlbl1HyperLinkClick
end

Properties 9

NameTypeDefaultDescription
AlphaByte192Opacity: 0 fully transparent, 255 opaque.
AlignmentHorizontalTAlignmenttaLeftJustifyHorizontal text alignment: left, centred or right.
AlignmentVerticalTVerticalAlignmenttaAlignTopVertical text alignment: top, centred or bottom.
AutoSizeBooleanTrueWhether the control resizes itself to fit its content.
RoundBackgroundBooleanFalseDraws the background with rounded corners; combined with Color it gives a tag-style text block.
RoundSizeInteger5Corner radius in pixels; 0 means square corners.
ColorTColorclWhiteBackground color of the control; ignored while Transparent is on.
HyperLinkMouseButtonsTMlSkinHTLabelMouseButtonsWhich mouse buttons activate a hyperlink — left, right, middle, in any combination.
HyperLinkFontHotColorTColorclRedText color of a hyperlink while the mouse is over it.

Events 1

NameTypeDefaultDescription
OnHyperLinkClickTMlSkinHyperLinkClickEventFires when a hyperlink is clicked; the handler receives the link target so it can open a page or run an action.
Events of TMlSkinCustomPanel 1
NameTypeDefaultDescription
OnCustomDrawTMlCustomDrawEventCustom draw event: paint your own content after the control has drawn itself.
Properties of TMlSkinCustomControl 4
NameTypeDefaultDescription
AboutTMlAboutInfoA design-time property: double-clicking it in the Object Inspector opens the MLSkin about box with the component version. It has no effect at run time and is not stored in the .dfm.
TransparentBooleanTrueTransparent background: the control skips its own fill and shows the form background (image or color) instead.
AutoInvalidateBooleanFalseRepaints automatically when the content changes. Turn it on if property changes do not show up.
EraseBackgroundBooleanFalseWhether the background is erased before painting; worth toggling if the control flickers.
Events of TMlSkinCustomControl 4
NameTypeDefaultDescription
OnDPIChangedTMlDPIChangedEventFires when the screen DPI changes, for example when the window moves to a monitor with a different scaling — a good place to re-adjust anything you draw yourself.
OnBackgroundChangingTMlBackgroundEventFires just before the background changes, giving you a chance to adjust what is drawn.
OnBackgroundChangedTMlCustomDrawEventFires after the background has been drawn, so you can paint on top of it.
OnVisibleChangedTNotifyEventFires when the control is shown or hidden.

Only the properties and events MLSkin adds are listed here. Standard VCL properties such as Align, Anchors, Font and OnClick are available too and behave exactly as on the stock controls.

Offline helpA PDF / CHM version is available for offline reading.