全屏窗口上的按钮排列

时间:2014-10-22 14:35:19

标签: qt qt4 qt5

我的目的是提供一个包含两个部分的GUI,其中一个部分显示k个按钮,其中k是特定文件夹中的.txt文件数。我很高兴知道有一种方法可以简单地添加按钮(最大可能),仍然“很好”地安排在一个全屏窗口。换句话说,我只想添加按钮,这些将自动为我安排(没有规定坐标和尺寸)。

初始窗口应为全屏,按钮应尽可能大。有关如何实现这一目标的任何描述,以及对现有示例的指示,都非常受欢迎。

1 个答案:

答案 0 :(得分:1)

您应该查看Qt Layouts,确切地说是这类问题。

一个简单的例子可能类似于:

QStringList myListOfFiles;

QWidget *parentWidget; // The widget you want to put them into
QVBoxLayout *layout = new QVBoxLayout;
foreach(QString file, myListOfFiles)
{
     QPushButton *button = new QPushButton(fileName,this);
     layout->addWidget(button);
}
parentWidget->setLayout(layout);

这会将按钮排列在一个垂直列中,并且与父窗口小部件一样宽。如果您需要多个列,可以查看QGridLayout