为了账号安全,请及时绑定邮箱和手机立即绑定

我的本意是将控件布置成两行两列,却出现下图的结果。我该如何作出修改?

我的本意是将控件布置成两行两列,却出现下图的结果。我该如何作出修改?

动漫人物 2022-10-08 14:10:59
教程中Qt 版本为5.0.1,代码如下:QGridLayout *mainLayout = new QGridLayout(this); mainLayout->addWidget(label1,0,0); mainLayout->addWidget(lineEdit,0,1); mainLayout->addWidget(label2,1,0); mainLayout->addWidget(button,1,1);我i使用的版本为5.3.1,同样的代码,显示结果如图:
查看完整描述

3 回答

?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

完全没问题啊,我的Qt也是5.3.1,下面代码是在QDialog的构造函数中的,后面的和你的代码完全一样:


         QLabel *label1 = new QLabel;    label1->setText("label1");     QLineEdit *lineEdit = new QLineEdit;     QLabel *label2 = new QLabel;    label2->setText("label2");     QPushButton *button = new QPushButton;    button->setText("button");     QGridLayout *mainLayout = new QGridLayout(this);     mainLayout->addWidget(label1,0,0);     mainLayout->addWidget(lineEdit,0,1);     mainLayout->addWidget(label2,1,0);     mainLayout->addWidget(button,1,1);

 
这是运行截图:


查看完整回答
反对 回复 2022-10-12
?
LEATH

TA贡献1936条经验 获得超6个赞

在他的第14行插入以下三句代码
QWidget *centralWidget = new QWidget();
centralWidget->setLayout(mainLayout);
setCentralWidget(centralWidget);

查看完整回答
反对 回复 2022-10-12
?
红糖糍粑

TA贡献1815条经验 获得超6个赞

你的基类是QMainWindow,所以不行。你把基类换成QWidget就OK了

查看完整回答
反对 回复 2022-10-12
  • 3 回答
  • 0 关注
  • 99 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信