自学内容网 自学内容网

Qt(10.10)

​
#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    objTimer = new QTimer(this);//申请空间给objTimer
    connect(objTimer, &QTimer::timeout, this, &Widget::timeout_slot);


}

Widget::~Widget()
{
    delete ui;
}


void Widget::on_btn1_clicked()
{

    objTimer->start(1000);//每隔1s发送timeout信号
}

void Widget::timeout_slot()//自定义timeout信号对应的槽函数
{
     QTime  sysTime  = QTime::currentTime();

     QString t = sysTime.toString("hh:mm:ss");
     ui->Edit->setText(t);
}
void Widget::timerEvent(QTimerEvent *event)
{
    if(event->timerId() == clockTimerId)
        {
            //判断行编辑器中的文本与时间标签中的文本是否一致
            if(ui->Edit->text() == ui->Edit_2->text())
            {

           ui->label->setText("三更灯火五只鸡"
                              "正是男儿读书时"
                              "黑发不知勤学早"
                              "白首方悔读书迟");
           QFont font;
           font.setPointSize(25);
           QPalette palette;
           palette.setColor(QPalette::WindowText, Qt::red);
            ui->label->setFont(font);  //设置字体大小
            ui->label->setPalette(palette);//设置字体颜色

           this->killTimer(clockTimerId);
                       //将按钮设置成可用状态
            ui->btn2->setEnabled(true);
            }
}
}


void Widget::on_btn2_clicked()
{
    clockTimerId = this->startTimer(1000);

     ui->btn2->setEnabled(false);//将按钮设置成不可用状态
}

void Widget::on_btn3_clicked()
{
    objTimer->stop();
    ui->label->clear();
    ui->Edit_2->clear();
    ui->Edit->clear();
}

​

 

 

 


原文地址:https://blog.csdn.net/saberyydsicloud/article/details/142830875

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!