使QGraphicsView大小合适

时间:2015-10-24 03:20:55

标签: c++ qt size qgraphicsview

我想让QGraphicsView适合固定大小的QMainWiondw。 我需要左上角的坐标为(0,0)。 我怎么能这样做?

这是我的主要功能

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow window;
    window.setFixedSize(1440, 900);

    window.show();

    return a.exec();
}

这是MainWindow构造函数。

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    view = new QGraphicsView(this);
    scene = new QGraphicsScene(0, 0, 1440, 900, this);
    view->setScene(scene);
    setCentralWidget(view);

    drawCoordinate(0,0);
}

出现了一个卷轴。我认为这是标题栏的交易。

只要主窗口的大小是固定的,我就不介意QGraphicsView的大小。但我需要QGraphicsView在没有滚动条的情况下填充整个主窗口,主窗口的左上角位于(0,0)。

在@tangerine的帮助下,我可以制作这样的程序。但主窗口和图形视图之间仍有空间。 Program Output

这是我希望实现的目标: enter image description here

(0,0)坐标从主窗口的最顶部和最左边开始。

2 个答案:

答案 0 :(得分:1)

您需要使用主窗口的布局并将图形视图放入其中。您可以在此处找到有关此主题的更多信息:How to make a Qt Widget grow with the window size?

答案 1 :(得分:0)

如果我理解正确,我认为你应该在MainWindow构造函数中添加这个字符串: jQuery(document).ready(function($) { function setHeight() { windowHeight = $(window).innerHeight(); windowWidth = $(window).innerWidth(); $('.video-wrap, video').css('height', windowHeight); $('.video-wrap, video').css('width', windowWidth); } setHeight(); $(window).resize(function() { setHeight(); }); });