Qt Qml 垂直标签栏
Qt Qml Vertical Tabbar
我想以与 Qt Creater 在他们的应用程序中所做的类似的方式将 Vertical TabBar 添加到我的应用程序(如图所示)。
我一直在寻找如何简单地使 TabBar 垂直,但没有找到合适的答案(认为它是垂直的很常见)。
问题:如何制作垂直选项卡来浏览我拥有的不同 qml 文件?如果有更合适的选择,欢迎提出。
一个TabBar就是用一个普通的ListView
来显示一堆TabButtons
。您可以通过覆盖 contentItem
属性 并使 ListView 垂直来自定义它,如下所示:
// VertTabBar.qml
TabBar {
id: control
contentItem: ListView {
model: control.contentModel
currentIndex: control.currentIndex
spacing: control.spacing
orientation: ListView.Vertical // <<-- VERTICAL
boundsBehavior: Flickable.StopAtBounds
flickableDirection: Flickable.AutoFlickIfNeeded
snapMode: ListView.SnapToItem
highlightMoveDuration: 0
highlightRangeMode: ListView.ApplyRange
preferredHighlightBegin: 40
preferredHighlightEnd: height - 40
}
}
我想以与 Qt Creater 在他们的应用程序中所做的类似的方式将 Vertical TabBar 添加到我的应用程序(如图所示)。 我一直在寻找如何简单地使 TabBar 垂直,但没有找到合适的答案(认为它是垂直的很常见)。
问题:如何制作垂直选项卡来浏览我拥有的不同 qml 文件?如果有更合适的选择,欢迎提出。
一个TabBar就是用一个普通的ListView
来显示一堆TabButtons
。您可以通过覆盖 contentItem
属性 并使 ListView 垂直来自定义它,如下所示:
// VertTabBar.qml
TabBar {
id: control
contentItem: ListView {
model: control.contentModel
currentIndex: control.currentIndex
spacing: control.spacing
orientation: ListView.Vertical // <<-- VERTICAL
boundsBehavior: Flickable.StopAtBounds
flickableDirection: Flickable.AutoFlickIfNeeded
snapMode: ListView.SnapToItem
highlightMoveDuration: 0
highlightRangeMode: ListView.ApplyRange
preferredHighlightBegin: 40
preferredHighlightEnd: height - 40
}
}