哈啰单车 發表於 2026-1-8 15:10:00

盘点RAD Studio 13 中广受好评的13 个VCL新特性

<p><img src="https://image.evget.com/attachment/keditor/image/20260107/145303_4.png"></p>
<p><strong>RAD Studio 13</strong>发布已有一段时间,本文将聚焦&nbsp;<strong>VCL(Visual Component Library)</strong>。虽然&nbsp;<strong>RAD Studio 13</strong>&nbsp;并未引入全新的 VCL 组件,但在<strong>现有核心组件、UI 体验和 Windows 11 适配能力</strong>方面带来了大量实用增强,为开发现代化 Windows 桌面应用打开了更多可能。</p>
<p>本文所列的“13 大新特性”,是基于官方更新内容并结合实际开发价值进行整理的重点解读,并不代表全部更新内容。除新特性外,Embarcadero 研发团队还同步修复了大量历史问题,并持续优化 Windows 平台 API 集成与一致性。</p>
<div style="text-align: center"><span style="color: rgba(230, 126, 35, 1)"><strong>RAD Studio 13 Florence 官方试用版免费下载,请联系慧都科技</strong></span></div>
<h2>1. 标题栏(TitleBar)样式与控件支持增强</h2>
<p><strong>RAD Studio 13</strong>&nbsp;中,<strong>TitleBarPanel 正式支持 VCL 样式(VCL Styles)</strong>,这是自标题栏功能推出以来呼声极高的一项改进。现在,开发者可以在标题栏区域中绘制和使用样式化控件,实现更加统一、现代的 UI 体验。</p>
<p><img src="https://image.evget.com/attachment/keditor/image/20260107/150427_3.png"></p>
<p>同时新增了<strong>TTitleBar.StyleColors</strong>属性,可自动使用当前 VCL 样式的颜色来渲染标题栏背景与按钮。支持的控件包括(样式 / 非样式):</p>
<ul>
<li>
<p>TButton / TSpeedButton</p>
</li>
<li>
<p>TCheckBox / TRadioButton</p>
</li>
<li>
<p>TToolBar / TEdit / TComboBox</p>
</li>
<li>
<p>TFormTabsBar</p>
</li>
<li>
<p>TActionToolBar / TActionMainMenuBar</p>
</li>
</ul>
<p>这使得在不引入第三方控件的情况下,VCL 应用也能轻松打造贴合 Windows 11 的现代外观。</p>
<div><hr></div>
<h2>2. ControlList 组件能力升级</h2>
<p>ControlList 组件新增了对&nbsp;<strong>SplitButton(分裂按钮)</strong>&nbsp;的支持,这一能力已经在 IDE 的 GetIt 包管理对话框中得到实际应用。为此新增了:</p>
<ul>
<li>
<p>clbkSplitPushButton</p>
</li>
<li>
<p>clbkSplitToolButton</p>
</li>
</ul>
<p><img src="https://image.evget.com/attachment/keditor/image/20260107/150739_2.png"></p>
<p>开发者可通过TControlListButton.Style属性进行设置,并使用DropDownMenu绑定下拉菜单。此外,ControlList 还新增:</p>
<ul>
<li>
<p>OnGetItemHint事件</p>
</li>
<li>
<p>ShowItemHint属性</p>
</li>
</ul>
<p>从而支持&nbsp;<strong>“按项显示提示信息”</strong>,而非只能使用全局 Hint,大幅提升了交互细节表现。</p>
<div><hr></div>
<h2>3. FormsTabsBar 组件增强</h2>
<p>FormsTabsBar 是 RAD Studio 12 引入的重要组件,在 RAD Studio 13 中继续得到强化:</p>
<ul>
<li>
<p>新增透明显示支持(Transparent、ShowBottomLine)</p>
</li>
<li>
<p>新增OnGetTabCaption事件,增强标签灵活性</p>
</li>
<li>
<p>TabFromPoint、TabIndexFromPoint方法公开</p>
</li>
<li>
<p>新增MouseMiddleButtonClose,支持中键关闭标签页</p>
</li>
<li>
<p>修复并优化鼠标滚轮滚动行为</p>
</li>
</ul>
<p>配合标题栏显示能力,FormsTabsBar 已成为构建多窗体、多标签 Windows 应用的利器。</p>
<div><hr></div>
<h2>4. EdgeBrowser(WebView2)更新</h2>
<p><strong>RAD Studio 13</strong>&nbsp;将 WebView2 SDK 更新至&nbsp;<strong>1.0.3296.44</strong>,并增强了TEdgeBrowser组件:</p>
<ul>
<li>
<p>支持AddWebResourceRequestedFilterWithRequestSourceKinds</p>
</li>
<li>
<p>示例 Demo 同步更新</p>
</li>
</ul>
<p>TEdgeBrowser 为 VCL 应用提供了<strong>可深度控制的现代浏览器内核</strong>,支持 JavaScript 交互,非常适合混合桌面 + Web 场景。</p>
<div><hr></div>
<h2>5. WinUI 3 示例集成</h2>
<p>此前通过 GetIt 单独提供的 WinUI 3 头文件与示例,现在已<strong>直接集成到&nbsp;RAD Studio 13&nbsp;官方示例中</strong>,方便开发者快速体验和学习 WinUI 3 与 VCL 的结合方式。这对希望逐步拥抱新一代 Windows UI 技术的开发者来说,是一个非常友好的调整。</p>
<div><hr></div>
<h2>6. ActionMainMenuBar 支持滚动</h2>
<p>TActionMainMenuBar新增&nbsp;<strong>自动滚动支持</strong>:当菜单高度超出屏幕时,可进行垂直滚动显示。</p>
<p>这是一个开发者期待已久的功能,由于底层 Windows 控件限制,实现难度较高。本次更新不仅可用于业务系统,也已经被 RAD Studio IDE 本身采用,以适配低分辨率环境。</p>
<p><img src="https://image.evget.com/attachment/keditor/image/20260107/150944_3.png"></p>
<div><hr></div>
<h2>7. 移除遗留 Win98 代码</h2>
<p><strong>RAD Studio 13</strong>&nbsp;对 VCL 内部代码进行了“瘦身”,<strong>移除了针对 Windows 98 等早已淘汰系统的遗留逻辑</strong>。</p>
<p>这并不会影响应用在旧系统上的运行能力,而是避免继续暴露已无现实意义的特性选项,使 VCL 代码库更加清晰、现代。</p>
<div><hr></div>
<h2>8. TToggleSwitch 控件 UI 优化</h2>
<p>TToggleSwitch 的视觉效果进行了更新,使其更贴近&nbsp;<strong>Windows 11 原生开关样式</strong>。同时,部分“Windows 10”风格的 VCL 样式也得到了现代化调整(同样适用于 Windows 11)。VCL 依然支持:</p>
<ul>
<li>
<p>设计期样式预览</p>
</li>
<li>
<p>同一窗体中混合多种样式控件</p>
</li>
</ul>
<p>这在桌面开发框架中依然极具竞争力。</p>
<p><img src="https://image.evget.com/attachment/keditor/image/20260107/151109_4.png"></p>
<div><hr></div>
<h2>9. CategoryButtons 更灵活</h2>
<p>CategoryButtons 是一个功能强大但相对低调的控件,RAD Studio IDE 本身就大量使用它(如工具面板)。本次更新为TButtonItem与TButtonCategory新增:</p>
<ul>
<li>
<p>Visible属性</p>
</li>
<li>
<p>Enabled属性</p>
</li>
</ul>
<p>使开发者可以更精细地控制分类按钮的可见性与可用状态。</p>
<p><img src="https://image.evget.com/attachment/keditor/image/20260107/151226_9.png"></p>
<div><hr></div>
<h2>10. 样式化应用中的窗体边框控制</h2>
<p>新增TStyleManager.FormBorderSize属性,使开发者可以根据当前 VCL 样式,自定义窗体边框的尺寸和视觉表现。</p>
<p>虽然看似细节,但在追求 UI 一致性和专业感的桌面应用中,这是一项非常实用的增强。</p>
<div><hr></div>
<h2>11. MonthCalendar 新增 OnChange 事件</h2>
<p>MonthCalendar 组件新增OnChange事件,用于更直观地捕获日期选择变化。对于日历、排期、计划类应用来说,这一改进非常实用。</p>
<div><hr></div>
<h2>12. TCanvas 新增重载方法</h2>
<p>TCanvas 是 VCL 中最核心的 GDI 绘图类。本次新增了一组<strong>以&nbsp;</strong><strong>TPoint</strong><strong>&nbsp;作为参数的重载方法</strong>,让代码更加简洁易读:</p>
<ul>
<li>
<p>AngleArc</p>
</li>
<li>
<p>Draw</p>
</li>
<li>
<p>LineTo</p>
</li>
<li>
<p>MoveTo</p>
</li>
<li>
<p>FloodFill</p>
</li>
<li>
<p>TextOut</p>
</li>
</ul>
<p>在保持兼容性的同时,显著提升了绘图 API 的现代感。</p>
<p><img src="https://image.evget.com/attachment/keditor/image/20260107/151332_9.png"></p>
<div><hr></div>
<h2>13. Splitter 分隔条新增事件支持</h2>
<p>Splitter 控件新增两个关键事件:</p>
<ul>
<li>
<p>OnBeforeResize</p>
</li>
<li>
<p>OnAfterResize</p>
</li>
</ul>
<p>这让开发者可以在用户拖拽分隔条前后执行自定义逻辑,更方便地实现尺寸限制、联动布局等高级交互需求。</p>
<div><hr></div>
<h2>总结:VCL 仍在持续进化</h2>
<p>从&nbsp;<strong>RAD Studio 13&nbsp;</strong>的更新可以清晰看到:<strong>VCL 并非“传统”,而是在持续进化的成熟框架</strong>。它在保持:</p>
<ul>
<li>
<p>极小部署体积</p>
</li>
<li>
<p>几乎零运行时依赖</p>
</li>
<li>
<p>长期代码兼容性</p>
</li>
</ul>
<p>的同时,不断吸收最新的 Windows API 与 UI 设计理念。对于需要构建高性能、可长期维护的 Windows 客户端应用的团队而言,VCL 依然是当前行业中<strong>极具竞争力的选择</strong>。</p>
<p><span style="color: rgba(230, 126, 35, 1)"><strong>RAD Studio 13 Florence 官方试用版免费下载,请联系慧都科技</strong></span></p><br><br>
来源:https://www.cnblogs.com/software-Development/p/19457078
頁: [1]
查看完整版本: 盘点RAD Studio 13 中广受好评的13 个VCL新特性