我有两个自定义模型,我想在主窗口的一生中保持活力。两者都是由QT示例http://doc.qt.io/qt-5/qtwidgets-itemviews-simpletreemodel-example.html构建的。
这些模型包含一个名为"本地"one_answers"远程"的文件夹/目录的层次结构。
我可以以这样的方式实例化这些,以便可以在主窗口的其他成员函数中引用它们?我如何/可以使它们与MainWindow保持静态,还是有更好的方法?
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
// Generate models.
TreeModel *model_remote = new TreeModel(MainWindow::load_file_list());
TreeModel *model_local = new TreeModel(localDirList);
// Display models in a QTreeView.
ui->treeView_remote->setModel(model_remote);
ui->treeView_local->setModel(model_local);
}
void MainWindow::some_function()
{
// Here is where I would like to work with my model(s).
}
per drescherjm的评论上面:
ui->treeView_remote->model()
是指向模型的指针。