Qt调整大小:为小部件设置固定大小,需要根据屏幕大小调整大小

时间:2019-03-13 16:29:29

标签: qt resize

我正在Qtcreator中开发一个桌面应用程序,该应用程序需要根据屏幕尺寸进行调整。我已经知道如何获取屏幕尺寸。但是,我尚未将其全屏开发,因为我想设置最佳的中间尺寸并在以后调整其大小。

我已经使用“ setfixedsize()”功能为父窗口(以及1370px,768px)和所有子窗口小部件设置了固定大小,该应用看起来很棒。但是现在我为父窗口设置了另一个固定大小(即1920px,1080px),并且子窗口小部件没有按比例扩展。我希望它们根据父窗口的大小进行扩展和缩小。

我为所有子小部件设置固定大小是否正确?还是那个问题?使用这种调整大小功能在Qt中开发应用程序的正确方法是什么?

谢谢大家。

Ps:对不起,英语。

1 个答案:

答案 0 :(得分:0)

您应该仅为主窗口小部件设置固定大小。子窗口小部件的大小应使用布局确定。

QWidget* mainWidget = new QWidget;
QVBoxLayout* vBoxLayout = new QVBoxLayout(mainWidget);
QWidget* firstChildWidget = new QLabel("first widget");
QWidget* secondChildWidget = new QLabel("second widget");
QWidget* thirdChildWidget = new QLabel("third widget");
vBoxLayout->addWidget(firstChildWidget);
vBoxLayout->addWidget(secondChildWidget);
vBoxLayout->addWidget(thirdChildWidget);
mainWidget->setFixedSize(400, 400);
mainWidget->show();