QT作业4

这篇具有很好参考价值的文章主要介绍了QT作业4。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实现一个闹钟,当输入时间后,点击启动到达时间后循环播报三遍,便签内容

头文件:

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QTextToSpeech> //文本转语言类
#include <QTimerEvent> //定时器事件类
#include <QTime> //时间类

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_pushButton_clicked();

private:
    Ui::Widget *ui;

    //定义一个语音播报者
    QTextToSpeech *speecher;
    //定时器1的id
    int id1;
    //定时器2的id
    int id2;
};
#endif // WIDGET_H

源文件:

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

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);


    //设置一个1s定时器
    id1 = startTimer(1000);
    //居中显示label_3内容
    ui->label_3->setAlignment(Qt::AlignCenter);
}

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

//定时器超时自动执行的代码
void Widget::timerEvent(QTimerEvent *e)
{
    if(e->timerId() == id1){
        //获取系统当前时间
        QTime sys_time = QTime::currentTime();
        //将系统时间转换
        QString s = sys_time.toString("hh::mm::ss");
        //居中显示label内容
        ui->label->setAlignment(Qt::AlignCenter);
        //让label显示当前时间
        ui->label->setText(s);
    }

    if(e->timerId() == id2){
        //获取系统当前时间
        QTime sys_time = QTime::currentTime();
        //将系统时间转换
        QString s = sys_time.toString("hh::mm::ss");
        if(ui->lineEdit->text() == s){
            //给语言播报者实例化空间
            speecher = new QTextToSpeech(this);
            //播报3次label_3里的内容
            for(int i = 0;i < 3; i++){
                speecher->say(ui->label_3->text());
            }
        }
    }
}


void Widget::on_pushButton_clicked()
{
    //设置一个1s定时器
    id2 = startTimer(1000);
}

主函数文件:

#include "widget.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();
    return a.exec();
}

运行结果:

QT作业4,qt,开发语言

思维导图:

QT作业4,qt,开发语言文章来源地址https://www.toymoban.com/news/detail-758537.html

到了这里,关于QT作业4的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【VisualStudio】使用 C++ 语言开发 Qt 环境配置教程

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 先上一张效果图,具体步骤主要分为以下三步。 这一步不再赘述,注意一定要安装 C++ 语言。 可以参考这个教程 Visual Studio 2022安装与使用教程。 这一步也不再赘述,网上搜索教

    2024年02月10日
    浏览(76)
  • QT作业4

    实现一个闹钟,当输入时间后,点击启动到达时间后循环播报三遍,便签内容 头文件: 源文件: 主函数文件: 运行结果: 思维导图:

    2024年02月04日
    浏览(34)
  • 7.10 qt作业

    闹钟

    2024年02月16日
    浏览(36)
  • 7.26 作业 QT

    1.继续完善登录框,当登录成功时,关闭登录界面,跳转到新的界面中: 结果图:  second.h: widget.h: main.cpp: second.cpp: widget.cpp: 2.新建一个工程文件,将默认提供的代码加上注释信息: .pro: 3.思维导图:

    2024年02月15日
    浏览(52)
  • 7.28 作业 QT

    手动完成服务器的实现,并具体程序要注释清楚: widget.h: widget.cpp: 思维导图:    

    2024年02月15日
    浏览(40)
  • QT周五作业

    题目:实现简单水果的价格重量计算 点击一次水果重量+1  自动计算总价 代码: widget.h widget.cpp

    2024年02月02日
    浏览(41)
  • QT周四作业

    题目: 代码: widget.cpp widget.h

    2024年01月21日
    浏览(41)
  • 7.27 作业 QT

    要求:  结果图: clock.pro:  widget.h: widget.cpp: widget.ui: 思维导图:  

    2024年02月15日
    浏览(39)
  • 【VisualStudio】基于 Visual Studio 使用 C++ 语言开发 Qt 环境配置教程

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 先上一张效果图,具体步骤主要分为以下三步。 这一步不再赘述,注意一定要安装 C++ 语言。 可以参考这个教程 Visual Studio 2022安装与使用教程。 这一步也不再赘述,网上搜索教

    2024年02月15日
    浏览(65)
  • 【Visual Studio】使用 C++ 语言,配合 Qt,开发了一个串口通信界面

    知识不是单独的,一定是成体系的。更多我的个人总结和相关经验可查阅这个专栏:Visual Studio。 我要使用的功能比较简单,主要包含扫描串口、打开串口、发送数据、接收数据、暂停按钮、停止按钮,因此接下里将围绕这几个功能依次更新。 我的工程项目名字叫 “GUI”。

    2024年02月11日
    浏览(68)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包