qt制作一个简易的听小说工具
其实qt有一个类:QTextToSpeech
基于这个类制作了一个听小说的工具:
有一个前提,你需要下载小说,并且转化为utf-8的编码格式
在pro文件中加入 QT += texttospeech
然后看代码:
.h
#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QtTextToSpeech>
#include <QPushButton>
#include <QLineEdit>class Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();private slots:void onChooseClicked();private:QPushButton *m_pChooseBtn=nullptr;QLineEdit *m_pEdit=nullptr;QTextToSpeech *m_pTextSpeech=nullptr;QString m_readString="";
};
#endif // WIDGET_H
.cpp
#include "widget.h"
#include <QHBoxLayout>
#include <QFileDialog>Widget::Widget(QWidget *parent): QWidget(parent)
{m_pChooseBtn=new QPushButton(tr("Choose"),this);m_pEdit=new QLineEdit(this);QHBoxLayout *mainLayout=new QHBoxLayout(this);mainLayout->addWidget(m_pEdit);mainLayout->addWidget(m_pChooseBtn);mainLayout->setMargin(5);mainLayout->setSpacing(0);this->setLayout(mainLayout);m_pTextSpeech=new QTextToSpeech(this);connect(m_pChooseBtn,&QPushButton::clicked,this,&Widget::onChooseClicked);
}Widget::~Widget()
{}void Widget::onChooseClicked()
{QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),"/home",tr("Txt (*.txt)"));if(fileName!=""){m_pEdit->setText(fileName);m_pTextSpeech->pause();m_pTextSpeech->stop();m_readString.clear();QFile file(fileName);if (!file.open(QIODevice::ReadOnly | QIODevice::Text))return;while (!file.atEnd()) {QString line = file.readLine();if(line!=""){m_readString+=line;}}m_pTextSpeech->say(m_readString);}}
qt制作一个简易的听小说工具相关推荐
- 使用 history 对象和 location 对象中的属性和方法制作一个简易的网页浏览工具
查看本章节 查看作业目录 需求说明: 使用 history 对象和 location 对象中的属性和方法制作一个简易的网页浏览工具 实现思路: 使用history对象中的 forward() 方法和 ...
- 利用Qt制作一个简易聊天软件
需求分析 即时通讯软件是通过即时通讯技术来实现在线聊天.交流的软件.需要完成基本的通信需求及工作场景需求. 架构分析 截图展示 项目简介 我们编写的即时通信软件叫做SeeU,它是一款基于Qt开发平台, ...
- Qt制作一个相册浏览工具
如何用Qt制作一个相册浏览的小程序? 程序开发思路如下: 1.支持多张相片浏览,可翻页浏览,相片可从本地导入; 2.相片要有放大和缩小的功能; 3.相片可自动浏览,时间间隔可自定义. 主要的代码如下: ...
- 制作一个简易的计算器
这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一 ...
- 使用python制作一个简易的远控终端
使用python制作一个简易的远控终端 远控终端的本质 1.服务端(攻击者)传输消息 ----> socket连接 ----> 客户端(被攻击者)接收消息 2.客户端执行消息内容(即执行服 ...
- 使用Java制作一个简易的远控终端
使用Java制作一个简易的远控终端 远控终端的本质 1.服务端(攻击者)传输消息 ----> socket连接 ----> 客户端(被攻击者)接收消息 2.客户端执行消息内容(即执行服务端 ...
- 利用 C# 中的 FileSystemWatcher 制作一个文件夹监控小工具
利用 C# 中的 FileSystemWatcher 制作一个文件夹监控小工具 独立观察员 2020 年 12 月 26 日 前一段看到微信公众号 "码农读书" 上发了一篇文章&l ...
- 利用CSS浮动制作一个简易导航栏
初学CSS,利用CSS浮动和无序列表制作一个简易导航栏: <!DOCTYPE html> <html lang="en"> <head>< ...
- 用Python制作一个简易的计时器
前言 今天又带来个小玩意 - 用Python制作一个简易的计时器 这个其实也能自定义一些东西的 就比如名字 颜色啥的 自己看着改就行 有想法的朋友也能自己再写写改改出其他的小功能 效果展示 实现代码 ...
- OpenCV(3):用Vs+Qt制作一个查看图片相似度的窗口程序
OpenCV(2):用Vs+Qt制作一个显示两张图片的窗口程序 在制作了窗口程序后,在网上找了比较两张图片差异度的算法. 哈希值方法:https://blog.csdn.net/fengbingchu ...
最新文章
- 设计模式之建造者模式(01)
- 6.28 头像预览:form方法和ajax方法
- [云炬创业基础笔记]第二章创业者测试6
- 【数据结构与算法】之深入解析“TinyURL加密与解密”的求解思路与算法示例
- HMAILSERVER集成WEB邮件系统(ROUNDCUBE WEBMAIL)
- 从统计代码来谈JS加载的优化
- Xiki Shell Kickstarter,HummingBoard计算机等
- 流程控制: jQ Deferred 与 ES6 Promise 使用新手向入坑!
- LightOJ 1245 - Harmonic Number (II)
- 5.4(将英里转化位千米)
- linux chmod 使用方法,linux中chmod命令的使用方法
- Smart View的客户化开发
- 鼎捷鼎新E10ERP软件介绍及资料
- Ubuntu14.04 用 CrossOver 安装 TMQQ2013
- java 类型通配符_通配符类型
- 数字化时代,如何赋能人才
- Python零基础学习笔记(三十三)—— 窗体的控制
- 关于BIOS加载BOOT.S的经典解答
- [高数][高昆轮][高等数学上][第二章-导数与微分]04.隐函数及由参数方程所确定的函数的导数...
- python多线程中join()的理解
热门文章
- redux-saga中间件的安装和使用-(三)
- js基础-17-解析url的函数,字符串出现的次数最多,并统计它出现几次
- 黑马vue实战项目-(二)用户列表开发
- Eclipse使用Git上传新项目到GitHub
- net configuration assistant 没反应_@尾款人:错过这条推送,7000多块就没了……
- java linq select_Java 8是否还需要LINQ?还是已经比LINQ 更好?
- CMU 15-213 Introduction to Computer Systems学习笔记(12) Linking
- 上下定高 中间自适应_B站微服务框架Kratos详细教程(3)中间件
- Excel转PDF方法
- war包部署到tomcat