C++ Qt:将QGraphicsView调整为窗口大小
我试图将QGraphicsView调整到我的窗口大小,但我的解决方案就是不起作用 白色矩形是我的QGraphicsView。我需要拉伸它以覆盖整个黑色空间,并在我的应用程序窗口调整大小时自动调整大小。在Qt中可能吗 以下是用于创建QGraphicsView的代码:C++ Qt:将QGraphicsView调整为窗口大小,c++,qt,C++,Qt,我试图将QGraphicsView调整到我的窗口大小,但我的解决方案就是不起作用 白色矩形是我的QGraphicsView。我需要拉伸它以覆盖整个黑色空间,并在我的应用程序窗口调整大小时自动调整大小。在Qt中可能吗 以下是用于创建QGraphicsView的代码: TrackWindow::TrackWindow() { tracksTimelineView = new QGraphicsView(this); tracksTimelineView->show()
TrackWindow::TrackWindow()
{
tracksTimelineView = new QGraphicsView(this);
tracksTimelineView->show();
}
正如Michael O.已经指出的,您需要在窗口中添加布局,例如
TrackWindow::TrackWindow
{
tracksTimelineView = new QGraphicsView(this);
QGridLayout* layout = new QGridLayout;
layout->addWidget(tracksTimelineView);
this->setLayout(layout);
tracksTimelineView->show();
}
希望这有帮助
编辑
如果TrackWindow继承自QMainWindow,请尝试此操作
TrackWindow::TrackWindow
{
tracksTimelineView = new QGraphicsView(this);
tracksTimelineView->show();
setCentralWidget(tracksTimelineView);
}
将布局添加到您的窗口刚才尝试了您的解决方案,但我得到了以下结果:QWidget::setLayout:“正在尝试在TrackWindow“”上设置QLayout”“,它已经有了布局”。QGraphicsView仍然不是stretched@Lizard_Paszczyk然后不要创建布局,而是这样做:
this->layout()->addWidget(tracksTimelineView)代码>TrackWindow是否继承QMainWindow?如果是这样,您可以尝试调用setCentralWidget(tracksTimelineView)代码>而不是创建布局。@craftyscondrel这就是我要找的。很有效,谢谢you@Lizard_Paszczyk很高兴我能帮忙,在我的答案中添加了这个解决方案。