我可以使用新的Delphi VCL样式仅为特定对象(TPageControl)着色吗?

我可以使用新的Delphi VCL样式仅为特定对象(TPageControl)着色吗?,delphi,vcl-styles,tpagecontrol,Delphi,Vcl Styles,Tpagecontrol,我从Delphi VCL样式开始,我发现使用“项目|选项”和“应用程序|外观”应用预定义样式非常容易 当然,这些样式会影响应用程序的整体外观。我想保留默认的Windows样式(我使用的是“启用运行时主题”),但我想更改TPageControl显示的默认白色背景。我在创建彩色页面控件选项卡时遇到过,该选项卡显示了如何覆盖选项卡的颜色,但它似乎仅在加载样式时才适用 我的问题是如何(是否?)在不加载样式文件的情况下使用TStyleServices只获取TTabSheet组件并设置颜色 (是的,我知道还

我从Delphi VCL样式开始,我发现使用“项目|选项”和“应用程序|外观”应用预定义样式非常容易

当然,这些样式会影响应用程序的整体外观。我想保留默认的Windows样式(我使用的是“启用运行时主题”),但我想更改TPageControl显示的默认白色背景。我在创建彩色页面控件选项卡时遇到过,该选项卡显示了如何覆盖选项卡的颜色,但它似乎仅在加载样式时才适用

我的问题是如何(是否?)在不加载样式文件的情况下使用TStyleServices只获取TTabSheet组件并设置颜色


(是的,我知道还有许多其他TPageControl替代品可用,我希望使用标准控件)。

即使Windows本机样式处于活动状态,您也可以随时访问加载的VCL样式的元素(颜色、图像)

var
  LStyleServices : TCustomStyleServices;
begin
  LStyleServices:=TStyleManager.Style['AnyLoadedVclStyle'];
  //draw with the LStyleServices 
  ....       
end;

但是,当选择自定义样式时,只有您可以使用Vcl样式挂钩来绘制控件。

Vcl样式对于此任务来说可能很繁重。只需要画背景。我会调查的,谢谢。谢谢你的澄清。