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
  • 相关阅读:
    ASP.NET MVC 部分视图
    IIS7.5安全配置研究
    微信公众号抢现金红包活动的核心代码分析(asp.net C#)
    [Android] hid设备按键流程简述
    [Android] AudioTrack::start
    [Android] createTrack_l
    [Android] 输入系统(三):加载按键映射
    [Android] 获取音频输出getOutput
    [Android] AudioTrack实例
    [Android] 输入系统(二)
  • 原文地址:https://www.cnblogs.com/judes/p/13584146.html
Copyright © 2011-2022 走看看