![]() |
1
18
首选的方法不是在默认组件上应用样式,而是从这些组件派生以创建预先设置样式的自定义组件。 我为我的项目所做的工作: 首先,我创建一个集中的“主题”文件,作为JavaScript共享模块:
接下来,我创建依赖它的自定义组件:
然后,我可以用一行代码在任何地方使用我的预样式组件:
这种方法有一个巨大的优点:它是真正面向对象的,而不是简单的蒙皮。 如果您愿意,您甚至可以在自定义组件中添加嵌套对象,如文本、图像、阴影等,甚至可以添加一些UI逻辑,如鼠标悬停时的颜色更改。
PS:是的,可以使用QML单例而不是JS模块,但它需要额外的
|
![]() |
2
1
使用“控件样式”时,无需显式指定目标控件中的每个属性。所有财产都可以在单独的
这里唯一的缺点是Style组件仅适用于Qt Quick Controls。不适用于任何Qt组件。 |
![]() |
DELI · 如何在QML中修改TableView数据? 2 年前 |
![]() |
joshp · Pysides6列从设置向后跨距 3 年前 |
![]() |
MingMing · C++在MaCOS 11上显示权限对话框 3 年前 |
![]() |
K.Mulier · PyQt5:如何将QObject移动到主线程? 6 年前 |