此代码生成两个单独的对话框,而我希望一个在另一个内部:
class MyTree : public QWidget {
QTreeView *view;
...
}
//class MyTree : public QDialog {...} // same result
QApplication testApp(argc, argv);
QDialog *topWidget = new QDialog;
MyTree *pjrTree = MyTree::Build();
pjrTree->setParent(topWidget);
topWidget->show();
testApp.exec();
对话框和树都正确显示。我只是无法强制实施遏制关系。
答案 0 :(得分:1)
答案 1 :(得分:0)
您的解决方案仅设置pjrTree
的父级,但不将其添加到QDialog布局中。您可以简单地class MyTree
来自QDialog
,它直接固有QWidget
。它会更加明确和正确。
答案 2 :(得分:0)
从QTreeView
派生MyTree类,而不是将指针QTreeView
作为成员变量,解决了我的问题。