c++ - Qt 将主窗口拆分为四个小部件

标签 c++ qt user-interface widget qt-creator

请你帮帮我。 我在 Qt 项目中有一个经典的主窗口,我想将它分成四个 SAME 部分 - 小部件。我需要在第一部分有一个小部件,而另一部分必须是空的。在那之后,在我的程序的后面,我想将另一个小部件添加到另一个部分。重要的是将主窗口分成四个部分,用于相同大小的小部件。

我有这段代码,但它将主窗口分成大小不同的四个部分。一个很大,另一个很小等等。

在 scene[..]->gameview 中是要插入的小部件。

注意:我不使用 .ui 文件,我手动编写所有代码。

        containter = new QWidget(this);
        container_layout = new QVBoxLayout;
        containter2 = new QWidget(this);
        container_layout2 = new QVBoxLayout;
        central = new QWidget(this);


        splitter1->addWidget(scenes[0]->gameview);
        splitter1->addWidget(scenes[1]->gameview);



        container_layout->addWidget(splitter1);
        containter->setLayout(container_layout);

        splitter2->setOrientation(Qt::Vertical);
        splitter2->addWidget(containter);
        if(number_of_scenes == 3)
        {

            splitter3->addWidget(scenes[2]->gameview);
            splitter3->addWidget(new QWidget);
            container_layout2->addWidget(splitter3);
            containter2->setLayout(container_layout);
        }
        else if(number_of_scenes == 4)
        {

            splitter3->addWidget(scenes[2]->gameview);
            splitter3->addWidget(scenes[3]->gameview);
            container_layout2->addWidget(splitter3);
            containter2->setLayout(container_layout);
        }
        else
        {

             splitter3->addWidget(new QWidget);
             splitter3->addWidget(new QWidget);
             container_layout2->addWidget(splitter3);
             containter2->setLayout(container_layout);
        }

        splitter2->addWidget(containter2);
        layoutt->addWidget(splitter2);

        central->setLayout(layoutt);
        setCentralWidget(central);

最佳答案

试试mdi区。 http://doc.qt.io/qt-5/qmdiarea.html还有一个例子 https://doc.qt.io/archives/4.6/mainwindows-mdi.htm一些同学在我的一个编程类(class)中将它用于游戏,以按照您所描述的方式做一些事情。

关于c++ - Qt 将主窗口拆分为四个小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43621315/

相关文章:

java - 将控制台输出重定向到 GUI

c++ - 创建一个唯一的临时目录

c++ - C++中对象的赋值

c++ - 动态转换是否需要目标类型?

c++ - ui上的qt c++神秘的不完整类类型错误

c++ - Qt:QSS 和 drawComplexControl()

javascript - 如何使用子元素以外的元素作为拖动 handle ?

c++ - gdb: 内部错误设置断点

c++ - Visual Studio : Design time build failed for project

ios - 无法将函数转换为方形颜色