第五次作业+4505B寝室队
1、需求分析:
作一个简单的MP3播放器,并能显示播放文件的路径。
2、设计思路:
用窗体设计播放器的界面,以市面上主流的播放器为标准,采用一个窗体的界面。
3、实现的功能:
第一是能播放MP3文件,而且显示所播放文件的路径,添加的有打开、暂停、停止、快进、快退按钮。
本来想加个播放列表,但是涉及到添加、播放顺序等功能,难度有点大,最终没有实现。
界面设计:

代码实现:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Media;
using System.Drawing.Drawing2D;
using System.Data.OleDb; namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{ public Form1()
{
InitializeComponent();
} #region private void button2_Click(object sender, EventArgs e)
{ OpenFileDialog openFile = new OpenFileDialog(); openFile.Filter = "mp3文件|*.mp3"; if (DialogResult.OK == openFile.ShowDialog())
{
axWindowsMediaPlayer1.URL =
openFile.FileName;
}
this.textBox1.Text = openFile.FileName.ToString();
} private void button3_Click(object sender, EventArgs e)
{
if (button3.Text == "暂停")
{
axWindowsMediaPlayer1.Ctlcontrols.pause();
button3.Text = "播放"; }
else
{
axWindowsMediaPlayer1.Ctlcontrols.play(); button3.Text = "暂停"; } } private void button4_Click(object sender, EventArgs e)
{
axWindowsMediaPlayer1.Ctlcontrols.stop();
} private void button1_Click(object sender, EventArgs e)
{
this.axWindowsMediaPlayer1.Ctlcontrols.fastForward();
} private void button5_Click(object sender, EventArgs e)
{
this.axWindowsMediaPlayer1.Ctlcontrols.fastReverse();
}
}
} #endregion
PSP耗时分析:
| Personal Software Process Stages | /小时 | |
| Planning | 计划 | 3 |
| • Estimate | 估计这个任务需要多长时间 | 8 |
| Development | 开发 | 4 |
| • Analysis | 需求分析 | 0.5 |
| • Design Spec | 生成设计文档 | 1 |
| • Coding Standard | 代码规范 | 2 |
| • Design | 具体设计 | 2 |
| • Coding | 具体代码 | 3 |
| • Code Review | 代码复审 | 1 |
| • Text | 测试 | 1 |
| Reporting | 报告 | 2 |
| • Test Report | 测试报告 | 1 |
| • Size Measurement | 计算工作量 |
1 |
| • Postmortem | 事后总结 |
0.5 |
团队分工:
寝室一共和有七个人:朱华建(我),王斌,杨坤,李旭东,爨彭鑫,王鹏正,张峰。
主要负责人:朱华建
界面设计:张峰,李旭东
代码实现:朱华建,王斌
功能测试:杨坤,爨彭鑫
记录:王鹏正
团队最困难的是代码实现,对于做播放器的知识不是很多。
团队得分:
朱华建:2分
张峰1.5分
李旭东1.5分
王斌2分
杨坤1分
爨彭鑫1分
王鹏正1分
总结:
这次作业很新颖,播放器见得多却不知道背后的故事,这次老师让我们做这个播放器我们有很大兴趣。
但是在实际中实现播放功能却不是那么简单,特别对于播放器的内核代码感觉很难,但是老师同意使用AXwindowsmediaplayer这个控件问题就很简单了,但是对于增加一个播放列表却不是很容易,折腾很多也没做出来,最后只得作罢。但是我们不会放弃,后续一定会加上这个功能。
第五次作业+4505B寝室队的更多相关文章
- 第五次作业——Alpha项目测试
第五次作业——Alpha项目测试 格式描述: 这个作业属于哪个课程 2019秋软工17级系统分析与设计 这个作业要求在哪里 作业要求 团队名称 杨荣模杰和他的佶祥虎 这个作业的目标 测试其他组项目并写 ...
- 耿丹CS16-2班第五次作业汇总
Deadline: 2016-10-26 23:59 作业内容 实验4-1 求1到20的阶乘的和,其中求阶乘用函数完成. 实验4-2 写一个判素数的函数,在主函数输入一个整数,输出其是否是素数的信息. ...
- C 语言学习 第五次作业总结
第五次作业,主要学习和复习的是几种循环结构的使用. 在前一次的课堂上,同学们已经学习了分支语句的使用.分支语句和循环语句配合使用,就可以写出更多的,逻辑功能丰富的代码了. 逻辑功能的丰富,也意味着学习 ...
- C语言第五次作业——循环结构
C语言程序设计第五次作业--循环结构(1) (一)改错题 输出华氏摄氏温度转换表:输入两个整数lower和upper,输出一张华氏摄氏温度转换表,华氏温度的取值范围是{lower,upper},每次增 ...
- BZOJ_3809_Gty的二逼妹子序列 && BZOJ_3236_[Ahoi2013]作业 _莫队+分块
BZOJ_3809_Gty的二逼妹子序列 && BZOJ_3236_[Ahoi2013]作业 _莫队+分块 Description Autumn和Bakser又在研究Gty的妹子序列了 ...
- 17秋 软件工程 团队第五次作业 Alpha
题目:团队作业--Alpha冲刺 17秋 软件工程 团队第五次作业 Alpha 12次Scrum 第一次Scrum 第二次Scrum 第三次Scrum 第四次Scrum 第五次Scrum 第六次Scr ...
- 【Luogu4396】[AHOI2013]作业(莫队)
[Luogu4396][AHOI2013]作业(莫队) 题面 洛谷 题解 模板题 #include<iostream> #include<cstdio> #include< ...
- C语言基础课第五次作业
PTA第五次作业 7-2 统计一行文本中的单词个数 一.程序代码 #include<stdio.h> int main(void) { ]; ,word=; char c; gets(st ...
- 17秋 软件工程 团队第五次作业 Alpha Scrum1
题目:团队作业--Alpha冲刺 17秋 软件工程 团队第五次作业 Alpha Scrum1 各个成员在 Alpha 阶段认领的任务 伟航:督促和监督团队进度,协调组内合作 港晨:APP前端页面编写: ...
随机推荐
- CCF认证201712-1最小差值
问题描述 给定n个数,请找出其中相差(差的绝对值)最小的两个数,输出它们的差值的绝对值. 输入格式 输入第一行包含一个整数n. 第二行包含n个正整数,相邻整数之间使用一个空格分隔. 输出格式 输出一个 ...
- 能够让你装逼的10个Python小技巧
列表推导式 你有一个list: bag = [1, 2, 3, 4, 5] 现在你想让所有元素翻倍,让它看起来是这个样子: [2, 4, 6, 8, 10] 大多初学者,根据之前语言的经验会大概这 ...
- ABAP-DBC录屏
*&---------------------------------------------------------------------**& ZXXL_MM02_01*& ...
- go学习笔记-环境安装
环境安装 环境安装 主要包含三个部分 运行环境及开发sdk 系统环境和路径配置 IDE配置 以mac环境为例,其他环境类似 运行环境及开发sdk 使用 brew 安装 brew install go ...
- 基于VHDL的8255可编程并行接口电路设计
一.实验题目名称: 8255可编程并行接口电路设计 二.实验目的.任务和要求: 实验目的:学习掌握基本的数字系统设计方法,建立自顶向下的设计思维,能够使用VHDL语言编写简单的应用IP核,掌握基本的F ...
- 20155307刘浩《网络对抗》逆向及Bof基础
20155307刘浩<网络对抗>逆向及Bof基础 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件.该程序正常执行流程是:main调用foo函数,foo函数会回显任何用户输 ...
- WPF-学习笔记 动态修改控件Margin的值
原文:WPF-学习笔记 动态修改控件Margin的值 举例说明:动态添加一个TextBox到Grid中,并设置它的Margin: TextBox text = new TextBox(); t_gri ...
- 01- web应用与https协议
1. import socket server = socket.socket() server.bind(("127.0.0.1", 8800)) server.listen(5 ...
- 6 admin(注册设计)源码解析、单例模式
1.单例模式 https://www.cnblogs.com/yuanchenqi/articles/8323452.html 单例模式(Singleton Pattern)是一种常用的软件设计模式, ...
- Codeforces 908 D.New Year and Arbitrary Arrangement (概率&期望DP)
题目链接:New Year and Arbitrary Arrangement 题意: 有一个ab字符串,初始为空. 用Pa/(Pa+Pb)的概率在末尾添加字母a,有 Pb/(Pa+Pb)的概率在末尾 ...