猿问

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

教程中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,同样的代码,显示结果如图:



动漫人物
浏览 101回答 3
3回答

慕桂英3389331

完全没问题啊,我的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); 这是运行截图:

LEATH

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

红糖糍粑

你的基类是QMainWindow,所以不行。你把基类换成QWidget就OK了
随时随地看视频慕课网APP

相关分类

Android
我要回答