Ubuntu 接口工具包文档QML 元素的主题语法与 CSS 非常相似。这听起来很棒,但我无法开始使用它。我尝试了很多方法,但我想我错过了一些基本问题的答案:
- 关于 .qmltheme 文件的放置位置和如何命名它们有什么规则吗?
- 如何进行引用?我在 .qmltheme 文件中设置的样式规则会自动附加到已设置相应名称的元素吗?或者我必须以某种方式在 .qmltheme 文件中设置对包含 QML 元素的文件的引用,或者反过来,或者两者兼而有之?
也许我没有理解文档中的一个重要部分。英语不是我的母语,因此我很难获得这个特定的文档。
答案1
不幸的是,文档没有解释应用程序应该如何设置主题,尤其是这部分尚未完全实现。但是,应用程序仍然可以加载主题文件,在其中更改系统定义的样式并指定自己的样式。
目前还没有具体的规则来规定将特定于应用程序的主题文件放在何处。但是,它应该放在应用程序知道并可以访问的地方。可以使用函数加载主题
Theme.loadTheme(url)
,其中url
是文件的 URL/URI.qmltheme
。例如,假设主题文件位于相对于应用程序文件夹的“主题”文件夹中,您应该有Theme.loadTheme(Qt.resolvedUrl("./theme/mytheme.qmltheme"))
我不确定我是否理解了您在此处所说的“引用”的含义。您指的是样式化组件如何知道要使用哪种样式,还是指提供视觉效果的 QML 元素如何链接到样式化组件?