zoukankan      html  css  js  c++  java
  • 葫芦娃团队

    一、需求分析

    做一个简单的播放器,就是程序能够打开MP3文件,并可以播放这个文件。

    二、设计思路

    设计窗体

    (1)首先我们要有一个能够播放音乐的控件,一般我们学习的Windows窗体应用程序没有播放音乐的控件,我们在工具箱的空白处,按下鼠标右键弹出子菜单,具体操作如图所示:

    (2)再添加一个ListBox控件和Button控件,设计添加列表和添加按钮,当点击添加按钮的时候,弹出一个“打开”窗体,选择MP3文件夹,打开到ListBox列表中,即可播放音乐。

    (3)窗体布局和外观设置,如图:

    功能分析

    (1)建立一个成员字段变量listFile来保存文件的路径及名字信息

    (2)首先实例化一个对打开文件的对话框,再实例化一个目录类。

    (3)把di目录的设为当前文件夹的父目录的父目录的父目录并记录全名,再把该路径赋给打开对话框的初始目录路径。

    (4)当打开对话框后,在其中选中一个文件名,把该文件名给path变量,path变量记录的是详细的文件路径信息。

    (5)返回指定项中集合中的索引,如果该文件名的索引大于0,则表示该文件已经在播放列表里面了,就弹出提示框"该文件已经存在!"。

    (6)把该文件名加入到lbNames里面,path是带有详细路径的文件信息,把该信息给播放器即可。

    三、代码实现

    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;
    
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            private List<string> listFile;
            public Form1()
            {
                InitializeComponent();
                listFile = new List<string>();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                OpenFileDialog dlgOpen = new OpenFileDialog();
                DirectoryInfo di = new DirectoryInfo(Application.ExecutablePath); 
                dlgOpen.InitialDirectory = di.Parent.Parent.Parent.FullName;
                dlgOpen.Filter = "多媒体文件(*.mp3;*.mpg)|*.mp3;*.mpg|所有文件(*.*)|*.*";
                if (dlgOpen.ShowDialog() == DialogResult.OK)
                  {
                      string path = dlgOpen.FileName;
                      listFile.Add(path);
                      string name = Path.GetFileNameWithoutExtension(path);
                      if (lbNames.Items.IndexOf(name) >= 0)
                      {
                          MessageBox.Show("该文件已经存在!");
                          return;
                      }
                      lbNames.Items.Add(name);
                     lbNames.SelectedIndex = lbNames.Items.Count - 1;
                     bofang.URL = path;
                    }
               
                
               }

    四、测试

    五、PSP耗时分析

    PSP2.1 Personal Software Process Stages Time(h)
    Planning 计划 18
      • Estimate 估计这个任务需要多长时间 18
    Development 开发 15
      • Analysis 需求分析 0.5
      • Design Spec 生成设计文档 1
      • Coding Standard 代码规范 2
      • Design 具体设计 2
      • Coding 具体代码 3
      • Code Review 代码复审 2
      • Text 测试 1
    Reporting 报告 3
      • Test Report 测试报告 1
      • Size Measurement 计算工作量

      • Postmortem 事后总结

    1.5

    六、团队分工

          这次团队作业是我们一个宿舍的七个人,有付媛媛(也就是我)、徐玉莹、王远离、卫文静、梁秋萍、胡田鸽、龚园苑。

          具体分工如下:

          团队负责人:付媛媛

          分析员:王远离、卫文静

          外观设计人员:龚园苑

          写代码人员:徐玉莹、付媛媛

          测试人员:梁秋萍

          记录人员:胡田鸽

          在这个团队合作中,我们感觉分析和写代码是最费脑筋的,所以在分析员和写代码人员分配了两个人。

          团队人员得分情况如下:

          付媛媛:3分

          徐玉莹:1.5分

          卫文静:1.3分

          王远离:1分

          梁秋萍:1分

          胡田鸽:1分

          龚园苑:1.2分

    七、总结

          折腾了这几天,终于完成了这个播放器小软件,看着劳动成果,很欣慰;虽然不是一个人做的,但我门看到了团队的力量。

          刚开始,我们一点头绪都没有,于是我们上网查资料,找到了Windows Media Player控件,可是这点进展远远不够;不过至少我们找到了方向,知道了有这么一个控件。顺着这条路,我们继续往前走。首先我们要定义成员变量,由于我们基础学的不是很扎实,费了我们很多时间和脑力,当时从我们脑海里冒出的第一个想法就是上网查资料,然后,我们又了翻C#书,把以前学过的理论知识应用上了。平时扎实的基础很关键,因为如果你平时学得就不怎么样,那么你面对这么一个有点小难度的程序,可能会望而却步。

          慢慢的一个能播放声音的播放器就做出来了,这次团队合作让我们了解到要编写一个程序,团队合作是至关重要的,不会的可以向会的汲取知识,会的在普及知识的时候又巩固了知识。还有查找资料也挺重要,在他人的基础上,再根据自己所学进行修改与调试,最后设计出自己想要的程序,过程虽然艰辛,但只要你持之以恒,付出一定会有回报。

          这次团队合作,更加深了我们之间的感情,提高了我们之间的默契,我们互相看到了大家的拼搏与努力,也让我们知道团队精神得难能可贵。我们都有了不少的收获,真正的收获更多是思想上的,让我们认识到程序的复杂,自己的微不足道,“学无止境”头一次认识的这么深刻,察觉自己的不足。

          人生的道路是曲折的,但正是因为曲折人生才光彩夺目,在人生的路上,总遇到重重困难,但正是因为困难我们才变的更坚强。今后的路还很长,面对困难,让我们用行动去俘虏它吧!  

  • 相关阅读:
    Piggy-Bank (hdoj1114)
    Word Amalgamation(hdoj1113)
    Lowest Bit(hdoj1196)
    1206: B.求和
    1207: C.LU的困惑
    STL初步
    关于521(nyoj)
    first blood暴力搜索,剪枝是关键
    变态最大值(nyoj)
    烧饼(nyoj779)
  • 原文地址:https://www.cnblogs.com/twinkle-0908/p/4939936.html
Copyright © 2011-2022 走看看