如何更改QtDesigner的颜色配置

问题描述 投票:0回答:1

左侧 UI 上选定的小部件将在右侧小部件列表中具有灰色背景颜色(就像当前行的突出显示一样)。

颜色太相似,我很难区分。

如何将其更改为其他颜色,例如红、蓝、绿?

此处为示例图片:

Example image

qt qt-creator qt-designer
1个回答
0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.