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