【发布时间】:2013-03-17 03:14:29
【问题描述】:
我使用QTreeView 和QStandardItemModel 在tree view 中显示其内容(从xml 文件中读取)。文件解析器工作正常,但是当我使用视图显示数据时,sizePolicy 就不起作用了。
为什么?如何让树的面积扩大?
(如下图所示,哪个树视图没有展开?)
展示树的图片:
代码(已编辑以添加“布局”部分,但也不起作用。):
...
QStandardItemModel *model = new QStandardItemModel();
preOrder(doc.firstChild(), model);
view = new QTreeView(pageDetails);
view->setModel(model);
model->setHorizontalHeaderLabels(QStringList(""));
QHBoxLayout* lay=new QHBoxLayout(pageDetails);
lay->setContentsMargins(0, 0, 0, 0);
lay->addWidget(view);
view->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
pageDetails->setLayout(lay);
view->show();
【问题讨论】:
-
您是否将
QTreeView添加到父窗口小部件的布局中? -
@user2155932 如何添加?
-
看here
-
@user2155932,查看编辑。
-
您还应该使用您创建的布局在父窗口小部件上调用
QWidget::setLayout。
标签: c++ qt view model qtreeview