QT 定时执行某个函数,隐藏某个控件


  1. QTimer::singleShot( 3000, this, SLOT(slotHideFinishedLabel())); // 这里是一个3秒定时器, 且只执行一次。

#include "dialog.h" #include "ui_dialog.h" #include <QLabel> #include <QTimer> Dialog::Dialog(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog), label(new QLabel(this)) { ui->setupUi(this); } Dialog::~Dialog() { delete ui; } void Dialog::on_toolButton_clicked() { showFinished(); QTimer::singleShot(3000, this, SLOT(slotHideFinishedLabel())); // 这里是一个3秒定时器, 且只执行一次。 } //下面这是提示框隐藏 void Dialog::slotHideFinishedLabel() { label->hide(); this->close(); } //下面这个红色提示框显示 void Dialog::showFinished() { QRect rect = geometry(); label->setMaximumWidth(500); label->setMaximumHeight(50); label->setMinimumWidth(500); label->setMinimumHeight(50); QFont font; font.setPointSize(25); label->setFont(font); label->setStyleSheet(QLatin1String("color:red;")); label->setText("The answer end of time!"); label->setGeometry(int((rect.width()-label->width())/2), int((rect.height()-label->height())/2), label->width(), label->height()); label->show();

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM