首页 > 其他 > 详细

Qt动态生成界面并通过拉姆达获取其返回值

时间:2020-03-05 22:45:00      阅读:63      评论:0      收藏:0      [点我收藏+]

代码:

QDialog* log = new QDialog(this);
log->deleteLater();
log->setWindowTitle("新增故障");
log->setGeometry(QCursor::pos().x(),QCursor::pos().y(),200,100);
log->setMinimumSize(200,100);

QLabel* lel = new QLabel(log);
lel->setText("请选择故障码:");
QComboBox* box = new QComboBox(log);box->addItem("123");
QHBoxLayout* hLayout1 = new QHBoxLayout();
hLayout1->addWidget(lel);
hLayout1->addWidget(box);


QPushButton* okBtn = new QPushButton(log);
QPushButton* clsBtn = new QPushButton(log);
okBtn->setText("确定");
clsBtn->setText("取消");
QObject::connect(okBtn, &QPushButton::clicked,log,[=]()
{
    log->done(RET_OK);
});
QObject::connect(clsBtn,&QPushButton::clicked,log,[=]()
{
    log->done(RET_ERR);
});
QHBoxLayout* hLayout2 = new QHBoxLayout();
hLayout2->addWidget(clsBtn);
hLayout2->addWidget(okBtn);

QVBoxLayout* vLayout = new QVBoxLayout();
vLayout->addItem(hLayout1);
vLayout->addItem(hLayout2);

log->setLayout(vLayout);
if(RET_OK == log->exec())
{
    qDebug()<<"故障码:"<<box->currentText();
}

技术分享图片

 

Qt动态生成界面并通过拉姆达获取其返回值

原文:https://www.cnblogs.com/judes/p/12423170.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!