
tlinklabel 在 delphi 中需严格遵循 html 标签语法(如 href 属性必须用英文双引号包裹),否则无法解析链接、不显示高亮样式且 linkclick 事件不会触发。
tlinklabel 在 delphi 中需严格遵循 html 标签语法(如 href 属性必须用英文双引号包裹),否则无法解析链接、不显示高亮样式且 linkclick 事件不会触发。
TLinkLabel 是 Delphi 提供的轻量级富文本链接控件,支持内嵌 HTML 风格的 标签以创建可点击超链接。但其解析器对 HTML 语法非常敏感——仅接受标准双引号(")作为属性定界符,不支持单引号(')。若错误使用单引号,控件将把整个字符串视为纯文本,既不渲染为超链接,也不响应鼠标悬停或点击,OnLinkClick 事件自然也不会被触发。
✅ 正确写法如下(注意 href="..." 中的双引号):
LinkLabel1.Caption := 'Click <a href="https://duckduckgo.com/">here</a> in order to open the search engine.';
⚠️ 常见错误与注意事项:
-
禁止使用单引号:
会被完全忽略; -
确保事件已关联:在 Object Inspector 中确认
OnLinkClick事件已绑定到处理函数(如LinkLabel1LinkClick),且函数签名正确:procedure TForm1.LinkLabel1LinkClick(Sender: TObject; const Link: string; LinkType: TLinkType); begin ShellExecute(0, 'open', PChar(Link), nil, nil, SW_SHOW); end;
-
仅支持基础
标签:不支持target、style等扩展属性;LinkType参数恒为ltURL,可用于统一跳转逻辑; -
兼容性提示:该控件自 Delphi 10.2 Tokyo 起引入,旧版本需改用
TRichEdit或第三方组件。
? 小结:TLinkLabel 的核心约束是「HTML 属性值必须用英文双引号」。只要确保语法合规,并正确连接事件处理器,即可零依赖实现简洁、原生的超链接交互体验。










