C++&QT---QT-day3

cpp 复制代码
#include "widget.h"
#include "ui_widget.h"
//需要在.pro文件第一行加 texttospeech

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    ui->lineEdit->setPlaceholderText("时:分:秒");//设定框占位字符
    //ui->textEdit->setText("春眠不觉晓");
    ui->lineEdit->setAlignment(Qt::AlignCenter);//居中显示
    ui->textEdit->setAlignment(Qt::AlignCenter);
    speecher=new QTextToSpeech(this);//给播报员分配空间
}

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

void Widget:: timerEvent(QTimerEvent *e)
{
    if(e->timerId() == tId)
    {
        QTime sys_time = QTime::currentTime(); //获取当前系统时间
        QString s = sys_time.toString("hh:mm:ss");//把系统时间转换成字符串
        ui->lab_time->setText(s);//将系统时间放入标签中
        ui->lab_time->setAlignment(Qt::AlignCenter);//居中显示
        if(s == ui->lineEdit->text())//判断设定时间与系统时间是否匹配
        {
            speecher->say(ui->textEdit->toPlainText());
        }
    }
}

void Widget::on_startBtn_clicked()//定时器启动事件
{
    tId=startTimer(1000);
}

void Widget::on_stopBtn_clicked()//定时器关闭事件
{
    this->killTimer(tId);
}
cpp 复制代码
#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QTimerEvent>
#include <QTime>
#include <QTimer>
#include <QLabel>
#include <QLineEdit>
#include <QTextToSpeech>

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();
    void timerEvent(QTimerEvent *e);

private slots:
    void on_startBtn_clicked();

    void on_stopBtn_clicked();

private:
    Ui::Widget *ui;
    int tId;
    QTextToSpeech *speecher;
};
#endif // WIDGET_H
相关推荐
hope_wisdom5 分钟前
C++网络编程之SSL/TLS加密通信
网络·c++·ssl·tls·加密通信
erxij10 分钟前
【游戏引擎之路】登神长阶(十四)——OpenGL教程:士别三日,当刮目相看
c++·经验分享·游戏·3d·游戏引擎
Lizhihao_23 分钟前
JAVA-队列
java·开发语言
学习路上_write31 分钟前
FPGA/Verilog,Quartus环境下if-else语句和case语句RT视图对比/学习记录
单片机·嵌入式硬件·qt·学习·fpga开发·github·硬件工程
林开落L40 分钟前
前缀和算法习题篇(上)
c++·算法·leetcode
远望清一色41 分钟前
基于MATLAB边缘检测博文
开发语言·算法·matlab
何曾参静谧1 小时前
「Py」Python基础篇 之 Python都可以做哪些自动化?
开发语言·python·自动化
Prejudices1 小时前
C++如何调用Python脚本
开发语言·c++·python
单音GG1 小时前
推荐一个基于协程的C++(lua)游戏服务器
服务器·c++·游戏·lua
我狠狠地刷刷刷刷刷1 小时前
中文分词模拟器
开发语言·python·算法