5,284
社区成员




FMX的styles就是贴图(至少主要是贴图,可能还有少部分是实时绘制出来的),这就是FMX的默认styles资源(自带三种分辨率的):
也可以在设计时把styles保存为单独的.style文件,RADStudio中自带了一些(位于\Program Files (x86)\Embarcadero\Studio\版本\Redist\styles下面)。
FMX框架的设计思路是强调“设计”,所以它的设计时功能空前强大,很多VCL中需要自绘制写很多代码的效果,在FMX中可以在设计时简单完成,无需写代码或者写很少的代码。
这种设计思想是将UI设计和编码尽可能分离,UI可以交给专门的UI设计人员+美工去做(类似web前端开发了),不需要程序员去操心。所以虽然感觉不能再Memo1.Color := claRed; 有点烦恼,实际上可以搞几套styles,每套存为一个StyleBook,运行时可以简单·切换,设置StyleBook属性或者调用SetStyleBook即可。
也可以直接从外部文件加载:TStyleManager.SetStyleFromFile(xxx);
所以,目前的方式,归根结底还是修改styles,不管是代码方式还是直接在设计期修改对应的样式。
在设计期修改还有一个好处是,整个项目里的其他Memo,可以直接选择使用相同的样式。
设计期修改样式后,会增加一个新的样式名,其他的MEMO可以直接选用。从而达到整体项目的统一。
修改styles.
参考这个文章:揭秘FMX进度条样式修改 (点击跳转)