如何在 Qt 中使用 QTreeView 来显示树状数据?
步骤:
- 创建一个 QTreeView 对象。
- 设置 QTreeView 的模型。
- 添加树状数据。
- 设置 QTreeView 的布局。
- 设置事件处理程序。
代码:
#include
#include
class MainWindow : public QWidget {
QTreeView *treeView;
public:
MainWindow() {
treeView = new QTreeView;
// 设置模型
treeView->setModel(new QAbstractItemModel());
// 添加数据
treeView->addItem("根节点");
treeView->addItem("子节点1");
treeView->addItem("子节点2");
// 设置布局
treeView->setSpacing(10);
treeView->setHeaderHidden(true);
// 设置事件处理程序
connect(treeView, &QTreeView::itemClicked, [this](QModelIndex index) {
qDebug() << "选中了:" << index.row() << "行" << index.column() << "列" << endl;
});
// 设置布局
setLayout(treeView);
}
};
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
MainWindow window;
window.show();
return app.exec();
}
运行程序后,您可以点击树状数据,并看到以下消息输出:
选中了:0行1列
注意:
- 您可以根据需要修改树状数据的格式,例如字体、颜色等。
- 您可以添加多层子节点。
- 您可以使用其他布局管理器,例如
GridLayout
或VBox
,来调整树状数据的布局。