更改宽度无效

时间:2019-05-07 07:05:31

标签: qt qml

我有一个跟随拨动开关:

Toggle switch with label

由此QML代码开发

        Row {
            id: myToggle
            anchors.horizontalCenter: parent.horizontalCenter
            width: 270
            height: 25

            StyledLabel {
                id: myToggleLabel
                text: qsTr("Toggle")
                width: parent.width - myToggleSwitch.width
                anchors.verticalCenter: parent.verticalCenter
            }

            Switch {
                id: myToggleSwitch
                height: parent.height
                implicitWidth: parent.width * 0.25 // changing 0.25 to 0.5
                                                   // or 0.75 or ...
                                                   // doesn't have any effect
                // Also replacing "implicitWidth" with "width" doesn't help!

                anchors.horizontalCenter: parent.horizontalCenter
                checked: true
                onCheckedChanged: { console.log("checked: ", checked) }
            }
        }

我打算更改label占用多少行宽以及switch本身占用多少行宽。

我将代码中的0.25值更改为0.50.75或...,但是没有任何效果。有人知道为什么吗?

1 个答案:

答案 0 :(得分:1)

设置干扰了设置宽度

从ID为id: myToggleSwitch的{​​{1}}删除这一行可以解决问题:

anchors.horizontalCenter: parent.horizontalCenter

现在可以调整开关宽度:

Toggle switch solved