在qt中设置sizepolicy

时间:2014-07-18 06:09:37

标签: qt qgraphicsview qsizepolicy

我的应用程序的中央窗口小部件中有一个小部件和一个图形视图。小部件中有四个按钮。我使用以下代码在水平布局中添加了两者:

QHBoxLayout *layout = new QHBoxLayout;
layout->addWidget(ui->entityWidget);
layout->addWidget(ui->graphicsView);
ui->centralWidget->setLayout(layout);

我已将窗口小部件的大小策略设置为最小,将图形视图的大小策略设置为首选。当我运行应用程序时,窗口小部件在左上角正确显示,但图形视图的左上角位于中央窗口小部件的中间,这不是必需的。它应该在窗口小部件旁边。

如何修改尺寸政策以在主窗口中正确放置图形视图?

2 个答案:

答案 0 :(得分:0)

看起来您没有将父窗口小部件设置为布局。这可能是你的问题。

尝试:

QHBoxLayout *layout = new QHBoxLayout(ui->centralWidget);
layout->addWidget(ui->entityWidget);
layout->addWidget(ui->graphicsView);
ui->centralWidget->setLayout(layout);

此外,如果您发布设置SizePolicy的方式,那将有所帮助。

答案 1 :(得分:0)

只需在graphicsView后面添加一个拉伸:

layout->addStretch();