QML覆盖项目样式

时间:2014-11-29 17:46:08

标签: qt combobox qml

是否可以只覆盖样式的一个属性,例如,combobox?

ComboBox {
        id: comboBox

        anchors.fill: parent

        style: ComboBoxStyle {
            label: Component {
               Text {
                    text: "Players -> " + comboBox.currentText
                }
            }
        }
    }

在KDE中,这个组合框看起来很难看,因为它不使用kde主题样式并使用默认的主题样式。

具有覆盖样式且没有样式覆盖的ComboBox: ComboBox with overriden styles and without style override

我需要在此图像上使用类似于最后一个的组合框,但使用自定义文本。

1 个答案:

答案 0 :(得分:0)

我知道您希望自定义行为具有原生外观。

您无法使用此Qt mailing list post中提到的QtQuick Controls 1或2来实现此开箱即用。

您可以使用Qt Widgets获得原生样式,但除了添加Qt Widgets之外,我不知道您是否可以获得主题原生样式......

你可以在这里提到Qt 6 CommonControls http://blog.qt.io/blog/2017/02/06/native-look-feel/,但它不允许你自定义很多,如帖子中所述。