左侧 UI 上选定的小部件将在右侧小部件列表中具有灰色背景颜色(就像当前行的突出显示一样)。
颜色太相似,我很难区分。
如何将其更改为其他颜色,例如红、蓝、绿?
此处为示例图片:
Qt Designer 是一个标准的 Qt 应用程序。因此,它支持一些命令行选项,包括
-stylesheet
:
- stylesheet= stylesheet,设置应用程序styleSheet。该值必须是包含样式表的文件的路径。
这允许为应用程序设置自定义 QSS,与
QApplication.setStyleSheet()
的做法类似,不同之处在于命令行选项仅接受文件,而 setStyleSheet()
只接受字符串(样式表的内容)。
现在,一个简单的解决方案是创建一个文件,根据
QSS 文档,为树视图设置
selection-background-color
(以及带有 selection-color
的文本的适当对比色);例如:
QTreeView {
selection-background-color: green;
selection-color: white;
}
然后运行 Designer,如下所示:
> designer -stylesheet customstyle.qss
但这并不正确。 Qt 样式表 (QSS) 始终传播到子级,这意味着任何树视图都将使用这些选择颜色,包括正在设计的小部件。你显然不希望这样。
幸运的是,Qt 开发人员为大多数硬编码小部件(包括 Designer 子部件)设置了对象名称。
对象检查器是一个用作 QDockWidget 的自定义设计器插件表单,具有
qt_designer_objectinspector_dock
对象名称集;这意味着您可以使用适当的选择器类型来实现:
QDockWidget#qt_designer_objectinspector_dock QTreeView {
selection-background-color: green;
selection-color: white;
}
上面的意思是:将给定的属性(所选项目的背景和文本颜色)应用于任何 QTreeView,该 QTreeView 是 QDockWidget 的直接子级,其对象名称等于
qt_designer_objectinspector_dock
。