一个会朗读文本的MFC应用程序
来源:互联网 发布:linux anaconda使用 编辑:程序博客网 时间:2024/06/10 18:13
闲的没事,偶然发现一个可以将文本朗读出来的MFC应用程序。
甚是好奇,决定琢磨琢磨源码自己实现一遍。
下面便是我整理的开发这个小巧的文本朗读程序的步骤,步骤比较详细,可能有点繁琐,不过适合新手借此尝试体验MFC的魅力(以下示例基于VS2012完成)
示例源码及需要的资料在此处下载:
http://download.csdn.net/detail/pengz0807/9070099
首先建立一个名为Speaker的基于对话框的MFC应用程序:
删除原有控件后如下图所示:
在工具箱添加编辑框控件和按钮控件:
打开编辑框属性,更改ID为IDC_TEXT:
继续更改编辑框属性:
打开按钮控件属性,更改按钮控件ID为IDC_SPEAK:
继续更改按钮属性:
试运行一下:
为编辑框控件IDC_TEXT添加控件变量m_UserText:
为按钮控件IDC_SPEAK添加消息处理函数,双击按钮控件即可自动添加如下消息处理函数:
将资料包里的头文件”ComAutoInit.h”和”TextSpeaker.h” 放到…\Speaker\Speaker目录下:
然后将这两个头文件添加到项目头文件里:
打开头文件SpeakerDlg.h,添加以下语句包含头文件”ComAutoInit.h”和”TextSpeaker.h”:
#include "ComAutoInit.h"
#include "TextSpeaker.h"
打开类向导,为CSpeakerDlg类添加成员变量m_TextSpeaker,类型为gds::CTextSpeaker:
添加完成后如下图所示:
打开SpeakerDlg.cpp,为函数voidCSpeakerDlg::OnBnClickedSpeak() 添加如下代码:
//获取编辑框里用户输入的文字
staticconst int cchMaxUserTextLen = 20000;//可朗读文字最大长度
WCHARszUserText[cchMaxUserTextLen + 1];
m_UserText.GetWindowText(szUserText,cchMaxUserTextLen);
//用一个方便的字符串实例包裹用户输入的文字
CStringWtext(szUserText);
if(text.Trim().IsEmpty())
{
//编辑框里用户输入的文字不能为空
AfxMessageBox(_T("编辑框为空!"),MB_OK|MB_ICONERROR);
return;
}
//朗读文字
m_TextSpeaker.Speak(text);
如下图所示:
到此基本已经完成,试运行如图所示:
接下来添加一些小部件:
添加静态文本框,可以写上自己的签名哦~
设置窗口最小化:
Ok 运行~
大功告成!快去享受成功的喜悦吧!~~
可能需要的资料在此处下载:
http://download.csdn.net/detail/pengz0807/9070099
- 一个会朗读文本的MFC应用程序
- 用TTS技术开发具有文本朗读功能的应用程序
- 用TTS技术开发具有文本朗读功能的应用程序
- 用TTS技术开发具有文本朗读功能的应用程序
- 发布一个"文本/文件朗读"小软件
- 用TTS技术开发具有文本朗读功能的应用程序(转)之一
- 用TTS技术开发具有文本朗读功能的应用程序(转)之二
- 用TTS技术开发具有文本朗读功能的应用程序(转)之三
- 用TTS技术开发具有文本朗读功能的应用程序(转)之四
- 一个MFC应用程序的生命周期
- 一个MFC应用程序的生命周期
- 一个MFC应用程序的生命周期
- MFC编写一个建议的文本编辑器
- 一个最简单的MFC应用程序
- MFC编辑框文本的快速读取、修改应用程序图标
- LabVIEW与文本朗读
- 简易文本朗读工具
- 文本内容自动朗读
- 修改Android actionbar 溢出菜单按钮(OverflowButton)默认图标
- ping
- U-boot的bootargs环境变量详解
- 定位的使用实例
- 懒加载 strong & weak
- 一个会朗读文本的MFC应用程序
- iOS提交遇到的新问题
- 前端思想
- 完全背包
- asp.net 时间的显示
- Conversion to Dalvik format failed with error 2
- XMind发展史
- ListView滑动删除 ,仿腾讯QQ
- 图片的轮转