当前位置:首页 >> 电力/水利 >>

04.概要设计


基于Qt的MP3概要设计

总页数 编制

正文

附录

生效日期

批准

南昌航空大学东软班

概要设计

修 改 履 历
修改编号 1 2 3 日期 2007.11.09 修改人 XXX 版本号 VER

0.1.0 修改内容 初始做成

南昌航空大学东软班

概要设计


1



文档概述 ............................................................................................................................................................ 4 1.1 1.2 1.3 文档目的和范围 .................................................................................................................................... 4 术语/缩略语 ........................................................................................................................................... 4 参考文档 ................................................................................................................................................ 4

2

模块概述 ............................................................................................................................................................ 5 2.1 2.2 2.3 模块功能定义 ........................................................................................................................................ 5 模块结构 ................................................................................................................................................ 5 模块动作时序 ........................................................................................................................................ 6

3

接口说明 ............................................................................................................................................................ 7 3.1 3.2 数据结构定义 ........................................................................................................................................ 7 函数 ........................................................................................................................................................ 8 3.2.1 3.2.2 模块间接口函数 ........................................................................................................................ 8 模块内接口函数 ...................................................................................................................... 13

南昌航空大学东软班

概要设计

1 文档概述
1.1 文档目的和范围
该项目主要完成主要在低 CPU 消耗率的条件下对音乐文件的的播放的基本操作,包括文件存储、播 放列表、音量控制、播放模式、播放功能 Ui 显示、网页播放。 本文档首先给出了整个软件系统功能结构的概貌,从总体架构上给出整个系统的轮廓,然后又对功能 需求、性能需求和其它非功能性需求进行了详细的描述。这些文字和图形都为了本文档能详细准确地描述 用户的需求的 MP3,比 MFC 的界面设计更为高效美观,同时也为用户更容易地理解这些需求的描述创造了 条件。 本文档用于描述“基于 c++的音频播放器”项目的系统需求,为该项目概要设计,详细设计和测试用 例的设计依据。同时,本文档也是用户确定软件功能需求的主要依据。

1.2 术语/缩略语

序号 1 2 3

术语/缩略语 CPU MP3 MFC

说明 中央处理器 音乐播放器

微软公司提供的一个类库(classlibraries) ,C++类,Windows API

1.3 参考文档
序号 文档名 作者 时间 版本

1 2 3 4 5

《多媒体技术教程》
《Qt Creator 快速入门》

林福宗
霍亚飞

2007.8 2003.4 2005.6 2004.3 2004.8

2.3 1.7 2.3 1.7 2.5

《C++编程思想》 《C++Qt 设计模式》 《Qt 开发实列》

Bruce Eckel Alan Ezust 陆文周

南昌航空大学东软班

概要设计

6

CSDN 论坛

CSDN

2000.4

1.0

2 模块概述
基于 Qt 的音频播放器能实现对音频文件的播放; 模块的主要功能是让 Mediaplay 对音频文件进行播放, 实现 MP3 的基础,最后再次基础上添加各种文件,各种路径,进行不同逻辑,不同模式,不同风格的播 放。

2.1 模块功能定义

序号 1 2 3 4 5 6 7

功能点

功能点详细内容

文件存储模块 播放列表模块 音量控制模块 播放模式模块 播放功能模块 Ui 显示模块 网页播放模块

存放播放列表的的路径、歌名、歌词等信息 在启动程序时候,自动加载上次播放过的歌曲 控制音量的大小,包括静音 在 ui 界面,用户能根据自己的需求选择播放模式 用户可以实现上一首、下一首、暂停、等基本操作 用户根据自己的需求移动播放界面,更换界面背景 将百度歌曲页设为连接主页,直接点击播放

2.2 模块结构

南昌航空大学东软班

概要设计

模块名称 Voice Music Lyric File TexFile Panel TransterTolCD FIleSystem PlayModel Ui

模块类型

概要说明

接口 接口 接口 接口 接口 接口 接口 内部模块 内部模块 内部模块

声音控制
MediaPlay 的控制

显示歌词 存放播放列表 存放歌词 界面显示 跟换皮肤 存储歌曲文件 播放模式 界面设计

2.3 模块动作时序
注:自上而下

南昌航空大学东软班

概要设计

3 接口说明
3.1 数据结构定义
class MediaPlayerDat{ public: static QMediaPlayer *player; static QMediaPlaylist *playlist; static int lastvolum; }; //播放对象 MediaPlayer 状态数据 //播放链表存放的歌曲数据 //音量数据 //全局 MediaPlay 的操作数据

class Widget : public QWidget { private: Ui::Widget *ui; QImage *image; QPoint last; QListWidgetItem *templistitem; } //界面指针 //背景图片指针 //存放鼠标点击焦点 //指向 QlistWidget 的指针

南昌航空大学东软班

概要设计

……

3.2 函数
void on_toolButton_11_clicked(); void on_toolButton_clicked(); void on_toolButton_9_clicked(); void on_toolButton_3_clicked(); void on_toolButton_4_clicked(); void on_toolButton_5_clicked(); void on_toolButton_10_clicked(); void on_horizontalSlider_2_valueChanged(int value); void on_comboBox_currentIndexChanged(int index); void on_horizontalSlider_valueChanged(int value); void changeslider(qint64 position); void contextMenuEvent (QContextMenuEvent * event ); void rightevent(); void on_listWidget_itemDoubleClicked(QListWidgetItem *item); void mousePressEvent(QMouseEvent *e); void mouseMoveEvent(QMouseEvent *e); void mouseReleaseEvent(QMouseEvent *e); //更换皮肤 // 播放歌曲 //载入播放列表 //上一首 //下一首 //静音 //打开网页 //音量控制 //选择播放模式 //拖动进度条,控制歌曲 //歌曲带动进度条滚动 //在 ListWidget 实现右键响应 // 右键响应的删除事件 //双击播放歌曲 //获取移动前窗口焦点事件 //获取移动后窗口焦点事件 /释放整个移动事件

3.2.1 模块间接口函数
3.2.1.1 on_toolButton_11_clicked
函数名 文件名 功能概要 记述形式

on_toolButton_11_clicked
../C++MP3

更换皮肤 void on_toolButton_11_clicked()

南昌航空大学东软班

概要设计

参数 类型 void 返回值 类型 值 void 说明 变量名 I/O 说明

详细说明 点击此按钮,进行本地的皮肤更换 使用注意事项 无

3.2.1.2 on_toolButton_clicked
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 类型 值 void I/O 说明 说明 -

on_toolButton_clicked
../C++MP3 播放歌曲

void on_toolButton_clicked()

详细说明 点击此按钮,进行逻辑判断,暂停播放歌曲 使用注意事项 无

南昌航空大学东软班

概要设计

3.2.1.3 on_toolButton_9_clicked
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 类型 值 void I/O 说明 说明

on_toolButton_9_clicked
../C++MP3 载入播放歌曲

void on_toolButton_9_clicked()

详细说明 点击此按钮,通过读取文件,载入上次播放歌曲列表 使用注意事项 无

3.2.1.4on_toolButton_3_clicked
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 类型 值 void I/O 说明 说明

on_toolButton_3_clicked
../C++MP3 上一首

void on_toolButton_3_clicked()

详细说明 点击此按钮,逻辑判断后,进行上一首歌曲的播放

南昌航空大学东软班

概要设计

使用注意事项 无

3.2.1.5on_toolButton_4_clicked
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 类型 值 void I/O 说明 说明

on_toolButton_4_clicked
../C++MP3 下一首

void on_toolButton_4_clicked()

详细说明 点击此按钮,逻辑判断后,进行下一首歌曲的播放 使用注意事项 无

3.2.1.6on_toolButton_5_clicked

函数名 文件名 功能概要 记述形式 参数 类型

on_toolButton_5_clicked
../C++MP3 静音

void on_toolButton_5_clicked()

变量名

I/O

说明

南昌航空大学东软班

概要设计

void 返回值

类型 值 void

说明

详细说明 点击此按钮,进行逻辑判断,实现静音和恢复静音 使用注意事项 无

3.2.1.7on_toolButton_10_clicked
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 变量名 类型 值 void I/O 说明 说明

on_toolButton_10_clicked
../C++MP3 打开网页

void on_toolButton_10_clicked()

详细说明 打开网页,进行网页播放 使用注意事项 无

3.2.1.8on_horizontalSlider_2_valueChanged
函数名

on_horizontalSlider_2_valueChanged

南昌航空大学东软班

概要设计

文件名 功能概要 记述形式 参数 类型 int 返回值

../C++MP3 音量控制

void on_horizontalSlider_2_valueChanged(int value)

变量名 value 类型 值 void

I/O 说明

说明 音量的大小的数据值

详细说明 通过滑条的移动来控制音量的大小 使用注意事项 无

3.2.2 模块内接口函数
3.2.2.1on_comboBox_currentIndexChanged
函数名 文件名 功能概要 记述形式 参数 类型 int 返回值 变量名 index 类型 值 void I/O I 说明 说明 播放模式的代表索引

on_comboBox_currentIndexChanged
../C++MP3 选择播放模式

void on_comboBox_currentIndexChanged(int index)

南昌航空大学东软班

概要设计

详细说明 选择播放模式,包括顺序播放、随机播放、循环播放 使用注意事项 无

3.2.2.2on_horizontalSlider_valueChanged
函数名 文件名 功能概要 记述形式

on_horizontalSlider_valueChanged
.../C++MP3

拖动进度条,控制歌曲 void on_horizontalSlider_valueChanged(int value);

参数 类型 int 返回值 变量名 value 类型 值 void 说明 I/O 说明 进度条目前位置的数据值

详细说明 移动进度条,控制歌曲移动位置 使用注意事项 无

3.2.2.3changeslider
函数名 文件名

changeslider
.../C++MP3

南昌航空大学东软班

概要设计

功能概要 记述形式 参数 类型 qint64 返回值

监督歌曲播放,刷新进度条的位置

void changeslider(qint64 position)

变量名 position 类型 值 void

I/O

说明 歌曲位置的数据值

说明

详细说明 进度条对歌曲进行监督,随着歌曲的播放移动 使用注意事项 无

3.2.2.4contextMenuEvent
函数名 文件名 功能概要 记述形式 参数 类型 变量名 I/O 说明 鼠标右键点击事件

contextMenuEvent
.../C++MP3 右键响应事件

void contextMenuEvent (QContextMenuEvent * event )

QContextMenuEve nt *
返回值

event

类型 值

void

说明

详细说明 在 ListWidget 的 ListItem 上,鼠标右键响应,弹出删除菜单 使用注意事项 无

南昌航空大学东软班

概要设计

3.2.2.5rightevent
函数名 文件名 功能概要 记述形式 参数 类型 void 返回值 类型 值 void 说明 变量名 I/O 说明

rightevent
.../C++MP3 右键响应菜单选项

void rightevent()

详细说明 点击删除播放项的响应事件,删除选中的歌曲 使用注意事项 无

3.2.2.6on_listWidget_itemDoubleClicked
函数名 文件名 功能概要 记述形式 参数 类型 变量名 I/O i void 说明 说明 双击 ListItem 项

on_listWidget_itemDoubleClicked
.../C++MP3 双击播放

void on_listWidget_itemDoubleClicked(QListWidgetItem *item)

QListWidgetItem *
返回值

item
类型 值

详细说明

南昌航空大学东软班

概要设计

双击播放列表中的歌曲,进行歌曲的播放 使用注意事项 无

3.2.2.7mousePressEvent
函数名 文件名 功能概要 记述形式 参数 类型 变量名 e 类型 值 void I/O i 说明 说明 鼠标点击获取焦点事件

mousePressEvent
.../C++MP3 获取点击前焦点

void mousePressEvent(QMouseEvent *e)

QMouseEvent *
返回值

详细说明 在移动界面前鼠标第一次点击界面获取焦点的响应事件 使用注意事项 无

3.2.2.8mouseMoveEvent
函数名 文件名 功能概要 记述形式 参数

mouseMoveEvent
.../C++MP3 获取释放鼠标后焦点

void mouseMoveEvent(QMouseEvent *e)

南昌航空大学东软班

概要设计

类型

变量名 e 类型 值 void

I/O i 说明

说明 鼠标释放后获取焦点事件

QMouseEvent *
返回值

详细说明 在移动界面前鼠标释放位置获取焦点的响应事件 使用注意事项 无

3.2.2.9mouseReleaseEvent
函数名 文件名 功能概要 记述形式 参数 类型 变量名 e 类型 值 void I/O i 说明 说明 释放整个移动界面事件

mouseReleaseEvent
.../C++MP3 获取整个鼠标事件

void mouseReleaseEvent(QMouseEvent *e)

QMouseEvent *
返回值

详细说明 在移动界面后,释放整个移动事件 使用注意事项 无


相关文章:
04概要设计说明书
04.概要设计说明书_软件开... 12页 免费如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 ...
04_概要设计说明书
】 四、概要设计说明书 2.任务概述 . 2.1 目标 2.2 运行环境 2.3 需求概述 2.4 条件与限制 3.总体设计 . 3.1 处理流程 3.2 总体结构和模块外部设计 3...
04概要设计说明书
04.概要设计说明书_软件开... 12页 免费如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 ...
04概要设计说明书
04概要设计说明书_IT/计算机_专业资料。四、概要设计说明书 4.1 设计目标概要设计是软件开发过程中的一个阶段, 在这个阶段需要完成一些明确的事情。 概要设 计阶段...
04产品概要设计规程
04产品概要设计规程_IT/计算机_专业资料。规定进行软件概要设计工作应遵循的原则,保证需求规格说明书中的各项需求能够得到满足北京市银河天鸿科技发展有限公司规程文件 标...
04.概要设计_彭炜
04.概要设计_彭炜_电力/水利_工程科技_专业资料。基于Qt的MP3概要设计 总页数 编制 正文 附录 生效日期 批准 南昌航空大学东软班 概要设计 修改履历 修改编号 1 ...
04、概要设计说明书
四、概要设计说明书 四、概要设计说明书 1.引言... 2 1.1 编写目的......
04页面概要设计说明书
04页面概要设计说明书 页面概要页面概要隐藏>> 文件编号: 文件编号: 配置项编号: 部门] 系统名] 版本号] 配置项编号:[部门]-[系统名] -[版本号] –D- PDS...
软件开发流程-0附件04、系统概要设计说明书_图文
408 ?北京久其软件股份有限公司 Page III of 408 《交通统计信息系统(一期)工程》系统概要设计说明书 1 文档介绍 1.1 文档目的 系统设计的目的是依据需求开发...
04、概要设计说明书
04概要设计说明书_设计/艺术_人文社科_专业资料 暂无评价|0人阅读|0次下载|举报文档04概要设计说明书_设计/艺术_人文社科_专业资料。四、概要设计说明书 四...
更多相关标签:
概要设计 | 概要设计说明书 | 概要设计模板 | 软件概要设计 | 软件概要设计说明书 | 系统概要设计 | 概要设计文档 | 软件概要设计模板 |