Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 如何为我自己的组件创建Vcl主题样式?_Delphi_Delphi Xe5_Vcl Styles - Fatal编程技术网

Delphi 如何为我自己的组件创建Vcl主题样式?

Delphi 如何为我自己的组件创建Vcl主题样式?,delphi,delphi-xe5,vcl-styles,Delphi,Delphi Xe5,Vcl Styles,我使用BitmapStyleDesigner.exe(随delphi xe5提供)编辑应用程序中的vcl样式 如何将自定义组件添加到样式器调色板?我希望我的TMyButton,它继承了TButton,具有与标准TButton不同的颜色、形状等 这只能通过编辑样式来实现,还是必须编辑TMyButton的源代码 (到目前为止)这个计划没有帮助 提前谢谢 编辑VCL样式文件是不够的。不幸的是,VCL样式的设计并不能按照您所描述的方式进行扩展,即使技术上可能做到这一点,您所描述的内容也需要大量的工作。因

我使用
BitmapStyleDesigner.exe
(随delphi xe5提供)编辑应用程序中的vcl样式

如何将自定义组件添加到样式器调色板?我希望我的
TMyButton
,它继承了
TButton
,具有与标准
TButton
不同的颜色、形状等

这只能通过编辑样式来实现,还是必须编辑
TMyButton
的源代码

(到目前为止)这个计划没有帮助


提前谢谢

编辑VCL样式文件是不够的。不幸的是,VCL样式的设计并不能按照您所描述的方式进行扩展,即使技术上可能做到这一点,您所描述的内容也需要大量的工作。因为您必须修改
Vcl.Themes
Vcl.style
单元的源代码。我的建议不是修改样式文件,而是为您的按钮创建一个新的样式挂钩,并实现您从资源文件自加载图像的绘制代码

请参阅第章。好的,但是如何将
StyleObject
与TMyButton之类的组件“连接”起来呢?谢谢,这就是我要查找的信息。现在我必须学习stylehooks:)(注:我有一个老项目,我们有一个修改过的vcl,我永远不会在一个新的应用程序中修改它,这是我的前任最糟糕的想法之一)