MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QLabel *label1=new QLabel;
QPixmap pix1,pix2;
pix1.load(":/res/恭喜过关.png");
label1->setPixmap(pix1);
label1->setGeometry(50,50,pix1.width(),pix1.height());
QLabel *label2=new QLabel;
label1->setParent(this);
connect(ui->pushButton,&QPushButton::clicked,[=]()mutable{
label2->setParent(this);
pix2.load(":/res/下一关.png");
label2->setPixmap(pix2);
label2->setGeometry(40,50,pix2.width(),pix2.height());
});
}
//图片谁放在谁的上面,就看哪个图片的setParent在后,上面的图片会挡住下面的图片会看不到效果。
这样写,点击按钮后不会出现pix2图片,label2->setParent(this) 这行代码似乎没有作用,只有放在connect的外面才行,而如果把[=]的=改为&,程序会直接异常退出,不明所以?????