首页| 论坛| 消息

标题:自己写的Widget派生类在布局中添加弹簧或者加上addStretch后无法显示
作者:johnrambos
日期:2017-11-03 16:12
内容:

这个是我的构造函数:
label = new QLabel("asda");
button = new QPushButton("sdadd");
ui->verticalLayout->addWidget(label);
ui->verticalLayout->addWidget(button);
form = new Form(ui->centralWidget);
ui->verticalLayout->addWidget(form);
ui->verticalLayout->addWidget(new QPushButton("1"));
ui->verticalLayout->addStretch();
在添加上最后一句ui->verticalLayout->addStretch();后发现自己写的From 类对象from无法显示,或者,在ui文件中添加一个弹簧叶也无法显示,一去掉这俩,就马上有显示了。


#1 [johnrambos 11-03 16:26]
现在我又 发现真正的问题是如果不加ui->verticalLayout->addWidget(form);这句,还可以显示from对象,因为不在layout中,一旦加入布局中就无法显示from,
而且,一旦将对象new 的方法 form = new Form(ui->centralWidget);改成form = new Form(),无论如何都不能在layout中显示了。
#2 [johnrambos 11-04 13:44]
问题已经解决,将addStretch()语句改为使用QSpacerItem类就行了,是在ui_*****.cpp文件下看见的。

回复 发表
主题 版块