Qt QDialog 继承类中使用 QGridLayout 布局控件
在 Qt 的 QDialog 继承类中,可以使用 QGridLayout 来布局控件或创建框框图。下面是一个使用 QGridLayout 在 QDialog 中创建框框图的示例:
#include <QtWidgets>
class MyDialog : public QDialog
{
public:
MyDialog(QWidget *parent = nullptr) : QDialog(parent)
{
// 创建 QGridLayout 对象
QGridLayout *layout = new QGridLayout(this);
// 创建需要放置在框框图中的控件
QLabel *label1 = new QLabel('Label 1');
QLabel *label2 = new QLabel('Label 2');
QPushButton *button1 = new QPushButton('Button 1');
QPushButton *button2 = new QPushButton('Button 2');
// 将控件添加到 QGridLayout 中,并指定行列位置
layout->addWidget(label1, 0, 0);
layout->addWidget(label2, 0, 1);
layout->addWidget(button1, 1, 0);
layout->addWidget(button2, 1, 1);
// 设置 QGridLayout 作为对话框的布局
setLayout(layout);
}
};
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
MyDialog dialog;
dialog.show();
return app.exec();
}
在上面的示例中,我们创建了一个 QDialog 的继承类 MyDialog,并在其构造函数中创建了一个 QGridLayout 对象 layout。然后,我们创建了几个需要放置在框框图中的控件,并使用 layout->addWidget()
方法将它们添加到 layout 中,并指定了它们的行列位置。最后,我们使用 setLayout()
方法将 layout 设置为对话框的布局。
这样,我们就在 QDialog 继承类中使用 QGridLayout 画出了位置或框框图。
原文地址: http://www.cveoy.top/t/topic/bXq1 著作权归作者所有。请勿转载和采集!