让Qt给你报时,为你读诗词 之 Qt5 TTS
对,Qt没有食言,9月底如期发布了6.2 LTS。嗯,昨天是9月30日,是月底没错,准时没毛病。博客地址如下
https://www.qt.io/blog/qt-6.2-lts-release
对于老王这样的普通的不能再普通的用户,只需要知道,Qt 6.2补充完善了Qt 5.15中原有的模块,可以试着过渡。随着微软新版本Windows11的推送在即,Qt的多平台支持也有了更新。

暂时不考虑版本带来的区别,重点进行今天的小制作,编写一个可以给你自动报时和朗读诗词的应用程序。
一、创建空白桌面工程
新建Widgete App

选择生成UI文件。

然后编译运行,验证下当前工程可用。

二、添加TTS语音功能类,朗读文本
包含头文件
#include <QtTextToSpeech/QTextToSpeech>
qmake添加模块
QT += core gui texttospeech
实例化
QTextToSpeech *tts = new QTextToSpeech(this);
UI界面添加文本编辑框和按钮,并修改名字

此时可以先测试下TTS是否可以正常工作,因为这个功能要依赖运行平台的TTS引擎。可以在按键的槽函数内直接输出明确的文本,然后运行测试。
void MainWindow::on_pushButton_rd_clicked()
{
if(tts->state() == QTextToSpeech::Ready){
tts->say("你好,我是Qt");
//tts->say(ui->textEdit->toPlainText());
} }
测试通过注释掉上一行代码,使用下一行,运行程序后在文本框输入“你好,我是Qt”,点击朗读按钮,就可以欣赏一个女生为你读诗了。录音在下面也上传了哦。

三、获取当前时间,语音报时
添加用到的头文件
#include <QTimer>
#include <QDateTime> new一个定时器
QTimer *timer = new QTimer(this); 定义显示时间文本的槽函数
void MainWindow::timeup(void){ QDateTime time = QDateTime::currentDateTime();
QString str = time.toString("yyyy-mm-dd hh:mm:ss -- dddd"); ui->label_time->setText(str);
} 绑定信号和槽并打开定时器
connect(timer,SIGNAL(timeout()),this,SLOT(timeup()));
timer->start(1000);
添加报时触发按钮和对应的槽函数,运行效果

这样就实现了两个功能,语音报时和朗读诗词。看到这里是不是也对Qt产生兴趣了呢。
让Qt给你报时,为你读诗词 之 Qt5 TTS的更多相关文章
- QT带OpenGL与不带的区别,QT5是一个伟大的框架,短时期内根本不会有替代者
你好 , 我Qt的初学者 , 我在官网下载Qt时感觉很迷茫 , 不知道要下载哪个, 麻烦你写他们之间的不同点:Qt 5.2.0 for Windows 32-bit (MinGW 4.8, OpenG ...
- Qt入门之基础篇(1):Qt4及Qt5的下载与安装
转载请注明出处:CN_Simo. 导语: Qt是一个跨平台的C++图形界面应用程序框架.它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序.Qt很容易扩展,并且 ...
- Qt入门之基础篇 ( 一 ) :Qt4及Qt5的下载与安装
转载请注明出处:CN_Simo. 导语: Qt是一个跨平台的C++图形界面应用程序框架.它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序.Qt很容易扩展,并且 ...
- 使用VS2010开发Qt程序的4点经验(QT4到QT5的升级,更改sln文件,切换工程使用的Qt库,在VS的Solution Explorer视图中建立文件夹)
导读 相比于Qt Creator,我更喜欢用VS2010来进行开发.虽然启动时间相对较慢,但是VS下强大的快捷键和丰富的插件,以及使用多年的经验,都让我觉得在开发过程中得心应手.其中最重要的一点是,有 ...
- 用QT 还是MFC ? (转)
我曾经使用过QT和MFC来开发过软件,我想和大家分享我使用他们时所体会的不同之处. 我并非一个职业作家,这篇文章可能看起来不如专业的杂志和网站上的那么条理清晰.但是,我在这里是用我自己的语言来表达我自 ...
- MFC和Qt优缺点
在网上看到的,拿来和大家一起讨论下. 我曾经使用过来开发过软件,我想和大家分享我使用他们时所体会的不同之处. 我并非一个职业作家,这篇文章可能看起来不如专业的杂志和网站上的那么条理清晰.但是,我在这里 ...
- QT和MFC的差别
QT和MFC的差别 在使用MFC之前就已经使用Qt这个事实可能影响了我的客观性. (MFC效率较高,但大量的Windows API和消息机制使得其较难理解,不易用:QT封装较好,易用且跨平台,但效率较 ...
- mfc和qt的区别
注:引用来源 http://wenda.chinabaike.com/b/30934/2013/1208/707410.html QT使用的编译器是MinGW,即Linux下的GCC移植到window ...
- MFC和Qt优缺点 (MFC几乎没有优点、全面下风)
在网上看到的,拿来和大家一起讨论下. 我曾经使用过来开发过软件,我想和大家分享我使用他们时所体会的不同之处. 我并非一个职业作家,这篇文章可能看起来不如专业的杂志和网站上的那么条理清晰.但是,我在这里 ...
随机推荐
- windwos10安装mysql8.0.20详细图文教程
windwos10安装mysql8.0.20详细图文教程 1.浏览器搜索mysql下载安装 地址:https://dev.mysql.com/downloads/mysql/ 2.登录或者不登录下载 ...
- UE4蓝图AI角色制作(三)
接上一节 6. 寻路网格体代理 通过允许配置多个"代理",虚幻引擎使得用户能够轻松为大小各异的AI创建寻路网格体.首先,选中世界大纲视图中的"RecastNavMesh& ...
- bzoj1858SCOI 序列操作 (线段树)
题目大意: 给定一个长度为n的01序列为,现在有m种操作 \(0\ a\ b\) 把\([a,b]\)的数全部修改为0 \(1\ a\ b\) 把\([a,b]\)的数全部修改为1 \(2\ a\ b ...
- [spring-rabbit]自动配置原理
1 一个简单的示例 在Spring Boot项目中使用spring-rabbit时,需要经过以下几个步骤: 引入依赖. 配置基本连接信息. 创建消息发布者,并发送消息. 创建消息消费者,监听消息并处理 ...
- stm32f103系列引脚定义-功能图
器件功能和配置(STM32F103xx增强型) STM32F103xx增强型模块框架图 STM32F103xx增强型VFQFPN36管脚图 STM32F103xx增强型LQFP100管脚图 STM32 ...
- 单片机入门stm32知识学习的先后顺序
这里大概的罗列了一些学习STM32的内容,以及学习顺序.如果是新手的话,建议边看中文手册和学习视频;如果是已经入门的,个人建议自己做一个项目,不论项目大小,当然里面会涉及到自己已经学习过的,或者是自己 ...
- The entitlements specified in your application’s Code Signing Entitlements file do not match those s
今天给打包 TPshop IOS (搜豹商城) ipa文件 调试运行 xcode运行提示这个错误: The entitlements specified in your application's C ...
- [转]DDR相关的一些基础知识
ODT ( On-DieTermination ,片内终结)ODT 也是 DDR2 相对于 DDR1 的关键技术突破,所谓的终结(端接),就是让信号被电路的终端吸 收掉,而不会在电路上形成反射, 造成 ...
- Luogu P1654 OSU! | 期望
题目链接 很妙的一道题. 题目要求$X^3$的期望值. 直接求不好求. 考虑先求出$X$和$X^2$的期望值,然后再求$X^3$的期望值. 迎.刃.而.解. #include<iostream& ...
- hdu 1754 I Hate It(单点更新,区段查最值)
题意: N个成绩.M个操作. Q a b:查询第a个到第b个成绩中最高成绩 U a b:将第a个成绩改成b 思路: 看代码,, 代码: const int maxn = 200010; int max ...