歌星性别是女,姓名字数是两个,然后按歌星拼音查询具体歌星,在这个歌星里面查询要点播的歌曲。
三个字男歌星:按照两个字男歌星点歌,点中后显示的歌星性别是男,姓名字数是三个,然后按歌星拼音查询具体歌星,在这个歌星里面查询要点播的歌曲。
三个字女歌星:按照两个字女歌星点歌,点中后显示的歌星性别是女,姓名字数是三个,然后按歌星拼音查询具体歌星,在这个歌星里面查询要点播的歌曲。
乐队和组合:点中后显示所有乐队的歌曲,然后在按乐队拼音查找具体乐队,再按歌曲拼音查找要点播的歌曲。
其他:点中后显示的是歌星姓名字数大于三所有歌手,然后在按歌曲拼音查找想要点播的歌曲。
4.2.5类型点歌子模块
(1)界面设计:该界面按照情歌,儿歌,轻音乐,迪士高,影视金曲,军歌六个选项查找歌曲。显示的界面如图4.12。
图4.12歌曲分类图
(2)类型点歌子模块功能描述
情歌:点中后显示歌曲类型是情歌,然后在歌曲拼音查找想要点的歌曲。
儿歌:点中后显示歌曲类型是儿歌,然后在歌曲拼音查找想要点的歌曲。
轻音乐:点中后显示歌曲类型是轻音乐,然后在歌曲拼音查找想要点的歌曲。
迪士高:点中后显示歌曲类型是迪士高,然后在歌曲拼音查找想要点的歌曲。
影视金曲:点中后显示歌曲类型是影视金曲,然后在歌曲拼音查找想要点的歌曲。
军歌:点中后显示歌曲类型是军歌,然后在歌曲拼音查找想要点的歌曲。
这里显示的是歌曲的类型,然后在按照类型查找想要点的歌曲。点中已选就是显示的播放控制歌曲的界面。
4.2.6语种点歌子模块
(1)界面设计:该界面可以按照汉语,英语,日语,韩语,粤语,台语六种查询歌曲模式。
(2)歌星点歌子模块功能描述
汉语:点中后显示歌曲语种是汉语,然后在歌曲拼音查找想要点的歌曲。
英语:点中后显示歌曲语种是英语,然后在歌曲拼音查找想要点的歌曲。
日语:点中后显示歌曲语种是日语,然后在歌曲拼音查找想要点的歌曲。
韩语:点中后显示歌曲语种是韩语,然后在歌曲拼音查找想要点的歌曲。
粤语:点中后显示歌曲语种是粤语,然后在歌曲拼音查找想要点的歌曲。
闽南语:点中后显示歌曲语种是闽南语,然后在歌曲拼音查找想要点的歌曲。
4.2.7播放控制子模块
(1)界面设计:该界面包括歌曲优先,删除,上一曲,下一曲,播放,停止,音箱音量。
(2)播放控制子模块功能描述
上一曲:这个按钮控件的功能是播放列表框中当前播放歌曲的上一首曲目,如果播放的歌曲是第一首歌曲则播放的还是第一首歌曲。播放下一曲功能的实现原理和播放上一曲差不多,就不再重复了。算法实现如图4.13。
图4.13播放上一曲功能算法流程图
优先:在已选表里面的歌曲,先点中,在点优先,这首歌就排到已选表的第一行的位置,就可以第一个被播放。
音量控制:在唱歌的时候,可以调节音箱和话筒音量的大小。MIXER类封装了与混音器操作相关的几个设备标识数据,包括设备标识号m_uMxId,设备句柄m_hmx和相应设备操作消息的窗口句柄m_hWnd。
GetControlDetails和SetControlDetails用于获取和设置制定的控制的详细参数值。
GetVolume和SetVolume用于获取和设置进行播放音频时指定的混音器控制的音量。这两个函数先调用GetLineInfo和GetLineControl函数来确定所对应的线路的控制,然后调用GetControlDetails和SetControlDetails来设置音量值。
第5章系统运行与调试
5.1系统测试方案
由于该系统中各个功能模块都频繁的使用数据库中的各种数据,因此需要一个公共的数据操作函数,用以执行各种SQL语句,将这个公用函数放在公用模块中,这样整个工程项目中的任何地方都可以调用公用模块中的函数,变量,这样可以大大提高代码的效率。
拼音点歌模块:在拼音点歌模块中,所有歌曲的属性都包括在内,按照歌曲属性点歌都在这个窗体显示,然后在按照歌曲的拼音查找歌曲,如图5.1。
图5.1查询添加歌曲图
上面的图显示的是查找歌曲,所查的歌曲是珍惜,如果显示的其他歌曲,就说明该歌曲其他歌曲的拼音的编辑和珍惜这首歌一样,所以就得把歌曲表里的这首歌重新编辑。查询到这首歌后,点中一下,这首歌曲就添加到了已选的表里,然后就可以播放控制歌曲了。如图5.2。
图5.2播放控制歌曲图
优先条件:在已选的歌曲中,如果想唱最后一个歌曲,点中歌曲后,在点一下优先,这首歌曲就排到已选歌曲表的最前面,下一次播放的就是这首歌曲。
删除条件:删除歌曲是把已选表中的歌曲删除,是根据已选表歌曲ID号的唯一进行操作的。
播放控制歌曲:主要实现对歌曲的控制,包括播放、暂停、停止、上一曲、下一曲等。
控制音箱效果:包括音量大小,迈克音量的大小,升降调,原唱,伴唱等功能,这里我调用了WindowsAPI类,利用GetVolume和SetVolume用于获取和设置进行播放音频时指定的混音器控制的音量。这两个函数先调用GetLineInfo和GetLineControl函数来确定所对应的线路的控制,然后调用GetControlDetails和SetControlDetails来设置音量值。
5.2系统结果分析与调试
测试与调试是软件开发过程中重要的一个阶段。在这个阶段中,要尽可能对系统进行反复的测试,从而得出对系统的进一步的改进,使系统更加完善,满足用户对系统的需要。应该明确,没有错误的测试是一个失败的测试。
在调试中碰到以下几个大问题:
(1)运行时的错误处理。在系统运行期间有可能产生错误,大致包括两种情况:一是操作人员有可能在操作上发生错误,二是非法用户破坏系统,产生运行时的错误。为增强系统的可靠性和健壮性,我尽可能地考虑各种运行时可能发生的错误:
①搜索歌曲时,搜索的内容与数据库表的匹配等问题。存在是否匹配的问题。对于不匹配将查询不到想点播的歌曲。
②进行查询操作时,有些内容不能为空,必须得是查询表中已有的属性。
(2)在对歌曲信息进行复合查询时,提取和组合sql语句时,遇到了查询出错,或者只能进行单一条件查询的情况,后来经过调试,找出了错误所在,在组合两个条件的sql语句时,第二个语句中的where没有去掉,在去掉它之后,能够顺利查询了。
(3)歌曲的删除和修改时,必须得根据歌曲ID的唯一性来判断,如果不唯一,两个同名的歌曲就都会被删除或修改。
在调试过程中,我主要采用了两种调试策略:
(1)试探法是调试人员分析错误征兆,猜想故障的大致位置,从而发现错误的出处的方法。我用试探法解决了一些系统约束问题。例如上面列举出的歌曲查询问题。
(2)演绎法是从列出的所有可能成立的错误原因或假设中,逐一排除从而发现错误的根源。例如,在调试删除优先窗口时,对于优先不成功的原因,进行分析,然后逐一排除,最终解决问题。
结论
通过三个月的毕业设计,我已经基本完成了自动点歌系统的所有功能,管理各种歌曲,然后分别按歌曲拼音点歌,按歌曲作者点歌,按歌曲字数点歌,按歌星点歌,按歌曲类型点歌,按歌曲语种点歌。调整音箱效果:音量/伴音/人声/左右声道/原唱/清唱/低音/升调/高音等;点播曲目管理:选中的曲目排队/选中的曲目优先被点唱。
对于该系统的界面应该美化一下,这样用户看起来比较美观,也便于操作。如果是按歌星点歌,最好应该把歌星的照片显示出来,这样才知道是不是你想要的结果。总而言之,该系统基本符合要求,但是并不是十分完美。
参考文献
[1]钟军.VisualBasic数据库高级实例导航[M].北京:科学出版社.2004
[2]李晓黎.VisualBasicSQLServer数据库
上一篇:
VB自动排课系统(论文和程序)
下一篇:
关于企业电子商务网站的平安控制