1

我正在使用 Qt 5.1 – QML 桌面组件。对于 TabView,我想让我的标签右对齐,但标签栏应该在右上角的按钮之后开始。我可以使用以下方法正确对齐标签:

 tabsAlignment: Qt.AlignRight

但是,我无法在右上角放置按钮。试过这个但没有用。:

 padding.right: 60

我看到在 TabViewStyle 中,我们将 rightCorner 设置为 null。我尝试将矩形或我自己的自定义按钮放入其中,但没有出现:

rightCorner:
        Rectangle{
        width: 60
        height: 60
        color: "red"
    }

请帮助使用 rightCorner 或解决此问题。谢谢!

4

2 回答 2

1

在阅读了 QtQuick 控件的源代码后,似乎角落需要有一个implicitWidth以及一个implicitHeight. 它不适用于只有width和的组件height

TabView {
    anchors.fill: parent
    style: TabViewStyle {
        rightCorner: Rectangle {
                color: "red"
                implicitWidth: 20
                implicitHeight: 20
        }
    }
    Tab { title: "Tabby" }
    Tab { title: "Tabby" }
    Tab { title: "Tabby" }
}
于 2014-04-10T00:09:57.133 回答
0

我有同样的问题。我注意到的是,并非所有组件都能正常工作。Text{} 或 Item{} 组件可以正常工作,但正如您所提到的,无法直接添加 Rectangle{} 组件,您必须将其包装在 Item 中,如下所示:

rightCorner: Item{
    Rectangle{
        width: 60
        height: 60
        color: "red"
    }
}
于 2013-11-10T13:52:10.880 回答