用QML代码实现Qt Creator的左侧导航栏的目录结构
时间: 2024-03-24 16:37:57 浏览: 84
可以使用Qt Quick Controls 2中的TreeView组件实现左侧导航栏的目录结构。下面是一个简单的QML代码示例:
```
import QtQuick 2.12
import QtQuick.Controls 2.12
TreeView {
id: treeView
anchors.fill: parent
model: myModel
delegate: TreeViewButton {
text: model.title
expanded: model.expanded
onClicked: model.expanded = !model.expanded
}
}
ListModel {
id: myModel
ListElement {
title: "Project"
expanded: true
children: [
ListElement {
title: "Sources"
},
ListElement {
title: "Headers"
},
ListElement {
title: "Forms"
}
]
}
}
```
在这个示例中,TreeView组件的model属性绑定到一个ListModel对象(myModel)。每个目录项都表示为一个ListElement对象,这些对象可以嵌套以形成目录结构。TreeViewButton是一个自定义组件,用于显示目录项的标题并允许展开或折叠子目录。当TreeViewButton被点击时,它会切换ListElement的expanded属性以控制子项的可见性。
阅读全文