qml好看的侧边栏
时间: 2023-07-01 11:05:07 浏览: 401
QML 中可以使用 Qt Quick Controls 中的侧边栏组件 `Sidebar` 来创建一个美观的侧边栏。
以下是一个简单的示例代码:
```qml
import QtQuick 2.15
import QtQuick.Controls 2.15
ApplicationWindow {
visible: true
width: 640
height: 480
title: qsTr("Sidebar")
Sidebar {
id: sidebar
width: 200
height: parent.height
anchors.left: parent.left
anchors.top: parent.top
ListView {
model: ["Home", "Settings", "Help"]
delegate: Rectangle {
width: parent.width
height: 40
color: ListView.isCurrentItem ? "lightgray" : "white"
Text {
text: modelData
anchors.centerIn: parent
}
}
highlight: Rectangle {
color: "lightblue"
height: 40
}
focus: true
Keys.onPressed: {
if (event.key === Qt.Key_Escape) sidebar.close()
}
onCurrentIndexChanged: {
var index = currentIndex
console.log("Current index: ", index, " model data: ", model.get(index))
}
}
}
Rectangle {
anchors.fill: parent
color: "lightblue"
Text {
text: "Content"
anchors.centerIn: parent
}
}
Button {
text: "Open sidebar"
onClicked: sidebar.open()
anchors.bottom: parent.bottom
anchors.right: parent.right
margin: 20
}
}
```
该代码创建了一个包含侧边栏和主内容的窗口。侧边栏由 `Sidebar` 组件创建,其中包含一个 `ListView` 作为菜单项。主内容由一个蓝色的矩形和一个位于底部的按钮组成。在按钮被点击时,侧边栏可以打开或关闭。
你可以根据自己的需求和设计,在此基础上进行修改和美化。
阅读全文