zoukankan      html  css  js  c++  java
  • Qt程序关闭弹出确定框

    1、代码

    void QJInterface::closeEvent(QCloseEvent *event)
    {
        QDialog* log = new QDialog(this);
        log->setObjectName("log");
        log->setStyleSheet("#log{background:#3379B7;}");
        log->deleteLater();
        log->setWindowTitle("退出平台");
        log->resize(200,100);
    //    log->setWindowFlags(Qt::Dialog | Qt::FramelessWindowHint);
        QLabel* lel = new QLabel(log);
        lel->setText("确定退出平台吗?");
        lel->setStyleSheet("QLabel{font-family:'宋体';font-size:20px;color:white;background:#3379B7;}");
        lel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
        QPushButton* okBtn = new QPushButton(log);
        QPushButton* clsBtn = new QPushButton(log);
        okBtn->setStyleSheet("QPushButton{color: green;min-75px;max-75px;min-height:20px;border:1px solid white;border-radius:5px;}"
                             "QPushButton:hover{background-color: #333333;border-color: #444444;color:rgb(255,255,255);}"
                             "QPushButton:pressed{background-color: #111111;border-color: #333333;color: yellow;}");
        clsBtn->setStyleSheet("QPushButton{color: green;min-75px;max-75px;min-height:20px;border:1px solid white;border-radius:5px;}"
                             "QPushButton:hover{background-color: #333333;border-color: #444444;color:rgb(255,255,255);}"
                             "QPushButton:pressed{background-color: #111111;border-color: #333333;color: yellow;}");
        okBtn->setText("确定");
        clsBtn->setText("取消");
        okBtn->setMaximumWidth(100);
        clsBtn->setMaximumWidth(100);
    
        QObject::connect(okBtn,&QPushButton::clicked,[=]()
        {
            log->done(1);
        });
        QObject::connect(clsBtn,&QPushButton::clicked,[=]()
        {
            log->done(0);
        });
        QHBoxLayout* hLayout = new QHBoxLayout();
        hLayout->setSpacing(5);
        hLayout->addStretch();
        hLayout->addWidget(okBtn);
        hLayout->addWidget(clsBtn);
        QVBoxLayout* v = new QVBoxLayout();
        v->addWidget(lel);
        v->addItem(hLayout);
        log->setLayout(v);
        if(1==log->exec())
        {
            event->accept();
        }
        else
        {
            event->ignore();
        }
    }

    主要是重写closeEvent函数

    2、效果




    长风破浪会有时,直挂云帆济沧海!
    可通过下方链接找到博主
    https://www.cnblogs.com/judes/p/10875138.html
  • 相关阅读:
    浅谈线性 Linear
    Github TinyRenderer渲染器课程实践记录
    蓝点无限UWB TDOA 低功耗标签 功耗测试
    UWB DW1000 BP30 测距代码架构
    C语言
    C语言
    张量tensor 和张量分解 tensor decomposition
    Manifold learning流行学习和谱聚类
    机器学习里面的核kernel, 维数灾难
    机器学习评价方法
  • 原文地址:https://www.cnblogs.com/judes/p/13584146.html
Copyright © 2011-2022 走看看