QGraphicsView 中的 QAbstractItemModel
QAbstractItemModel in QGraphicsView
我必须根据目录中的文件系统创建项目。我必须使用 QGraphicsView 而不是 (QTreeView/QListView) 是强制性的,所以我如何设法为 graphicsScene 保留 QModel。任何人都可以帮助我建议或参考如何使用 QGraphicsScene 加载 QFileModel 的示例。
只有一种简单的方法可以做到这一点,将带有模型的视图添加到场景中。是的,它仍然是 QTreeView/QListView
,但是您可以获得 QGraphicsView
和 QGraphicsScene
的所有优点,例如旋转、交互等
//fill the model and set model to view
ui->tableView->setParent(0);
QGraphicsProxyWidget * proxyView = ui->graphicsView->scene()->addWidget(ui->tableView);
proxyView->setRotation(45);
结果:
您不需要 QFileModel
。使用 QDir::entryInfoList
获取文件列表并使用 QFileSystemWatcher
跟踪文件系统的修改。
我必须根据目录中的文件系统创建项目。我必须使用 QGraphicsView 而不是 (QTreeView/QListView) 是强制性的,所以我如何设法为 graphicsScene 保留 QModel。任何人都可以帮助我建议或参考如何使用 QGraphicsScene 加载 QFileModel 的示例。
只有一种简单的方法可以做到这一点,将带有模型的视图添加到场景中。是的,它仍然是 QTreeView/QListView
,但是您可以获得 QGraphicsView
和 QGraphicsScene
的所有优点,例如旋转、交互等
//fill the model and set model to view
ui->tableView->setParent(0);
QGraphicsProxyWidget * proxyView = ui->graphicsView->scene()->addWidget(ui->tableView);
proxyView->setRotation(45);
结果:
您不需要 QFileModel
。使用 QDir::entryInfoList
获取文件列表并使用 QFileSystemWatcher
跟踪文件系统的修改。