版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#i nclude "FM_Mai n. h"#i nclude"CTL.H"#in clude<stdio.h>#in clude<wi ndows.h>#i nclude<mmsystem.h>#i nclude"GUI.h"#i nclude"ERR_CheckE nter.h"#pragma men t(lib,"wi nm m.lib")#include "FM_CheckFile.c"#i nclude"FM_Choo
2、se.c"#i nclude"FM_List.c"#i nclude "FM_Path.c"-n exts ong()int Order=1;/初始时为第一首歌,随音乐切换而切换int NewOrder=0;int Amount = 0;/ 歌曲总量int begin; /自定义列表中开始序号int circulatemode=1; / 循环模式int pp=O;int begi ntemp=0; /存储自定义列表边界int ww=-1;/显示自定义列表当前播放信息int upordown=1;/判断切歌方向int firstup=0;int
3、originvolume=500; / 默认音量为 500char v40="setaudio aa volume to 500"/ 初始化音量void In it()Order=1;NewOrder=0;Amount = 0;circulatemode=1;PP=O;begi ntemp=0;ww=-1;upordow n=1;firstup=0;origi nvolume=500;void ShowFileList()if(begi ntemp=0)begi ntemp=beg in;Amou nt = FM_CheckFile();begi n = Amount;if
4、(NewOrder=0)Show_GUI_EIGHT();FM_CheckFilePri nt(0,Amou nt);elseShow_GUI_EIGHT();FM_CheckFilePri nt(Amou nt,begi ntemp);void ShowFileDetails()int i=0;if(upordow n=1)if(NewOrder!=0)Order=Am oun t+1+ww;ww+;if(upordow n=2)if(firstup=0)if(NewOrder!=0)Order=Am oun t+1+ww; ww_;firstup-;elseif(NewOrder!=0)O
5、rder=Am oun t+1+ww; ww_;firstup+=4;i=Order-1;printf(”正在播放的音乐n");printf(”n");printf(”歌曲号歌曲名歌手名n");printf(”n");printf(”%3d",i nfoi.ID);prin tf("%-20s ",i nfoi.so ng);prin tf("%-10sn",i nfoi.si nger);prin tf("n");void Play()if(NewOrder!=0)Order=Am
6、oun t+1; char vol10="500" char v40; char ch200;sprintf(ch,"open "%s" alias aa",infoOrder-1.add); spri ntf(v," setaudio aa volume to %s",vol);mciSe ndStri ng(ch,NULL,O,NULL);mciSe ndStri ng(v,NULL,0,NULL);mciSe ndStri ng("play aa repeat",NULL,0,NULL);
7、/ getchar();void Stop()12 退出 nn");mciSe ndStri ng ("pause aa",NULL,0,NULL);printf("歌曲播放已暂停,输入3继续播放,输入/ getchar();void Resume()mciSe ndStri ng ("resume aa",NULL,O,NULL);/ getchar();void FastForward()int n=1;int m=0;int d=0;int min ute;int sec ond;char dd6020;char temp20;
8、doprintf("输入 1 快进:");scan f("%d", &n);mciSe ndStri ng ("status aa positio n", ddm, 20, 0);char ch20;spri ntf(ch,"%s",ddm);d=atoi(ddm);d+=5000;minute=(int)(int)(d/1OOO)/ 60);seco nd=(d/1000)-mi nute*60;itoa(d,ddm,10);spri ntf(temp,"seek aa to %s",
9、ddm);mciSe ndStri ng (temp,NULL,O,NULL);Play();m+;clrscr();ShowFileList();ShowFileDetails();Show_GUI_FOUR();printf("当前时间:d:%02dn",minute,second);while( n=1);void FastBack()int n=1;int m=0;int d=0;int min ute;int sec ond;char dd6020;char temp20;doprintf("输入1快退");scan f("%d&qu
10、ot;, &n);mciSe ndStri ng ("status aa positio n", ddm, 20, 0);char ch20;spri ntf(ch,"%s",ddm);d=atoi(ddm);d-=5000;minute=(int)(int)(d/1OOO)/ 60);seco nd=(d/1000)-mi nute*60;itoa(d,ddm,10);spri ntf(temp,"seek aa to %s",ddm);mciSe ndStri ng (temp,NULL,O,NULL);Play();m+
11、;clrscr();ShowFileList();ShowFileDetails();Show_GUI_FOUR();printf("当前时间:%d:%02dn",minute,second);while( n=1);void StopStop()char temp20;char ch10;itoa(0,ch,10);spri ntf(temp,"seek aa to %s",ch);mciSe ndStri ng (temp,NULL,0,NULL);mciSe ndStri ng ("pause aa",NULL,O,NULL);
12、printf("点击1重新播放nn");void VolumePlus()int n=1;/ int origi nvolume=500;char volume10;char temp40;while( n=1)printf("输入1增加音量,输入2退出音量增加模式");scan f("%d", &n);origi nvolume+=250;itoa(origi nvolume,volume,10);spri ntf(temp," setaudio aa volume to %s",volume);mciS
13、e ndStri ng (temp,NULL,0,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);getchar();clrscr();ShowFileList();ShowFileDetails();Show_GUI_FOUR();printf(” 当前音量:%dn",originvolume);origi nvolume-=250;void VolumeReduce()int n=1;/ int origi nvolume=500;char volume10;char temp40;while( n=1)printf
14、("输入1降低音量,输入2退出音量降低模式");scan f("%d", &n);origi nvolume-=250;itoa(origi nvolume,volume,10);spri ntf(temp,"setaudio aa volume to %s",volume);mciSe ndStri ng (temp,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/ getchar();clrscr();ShowFileList();ShowFi
15、leDetails();Show_GUI_FOUR();printf("当前音量:%dn",originvolume);origi nvolume+=250;void PreSo ng()if(NewOrder=0)if(circulatemode=1)if(Order<1)Order=1;char ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe nd
16、Stri ng(ch,NULL,O,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/ getchar();elsechar ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,O,NULL);mciSe ndStri n
17、g(v,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/getchar();if(circulatemode=2)if(Order<1)Order=Am ount;char ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,0,NULL);mciSe ndSt
18、ri ng(v,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/getchar();elsechar ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,O,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng(&q
19、uot;play aa ",NULL,0,NULL);/ getchar();elseOrder=Am oun t+pp;if(circulatemode=1)if(Order<Am ount)Order=Am ount;char ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,0,NULL);mciSe ndStri ng(
20、v,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/ getchar(); elsechar ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,O,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("
21、play aa ",NULL,0,NULL);/getchar();if(circulatemode=2)if(Order<Am ount)Order=begi n;char ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,0,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri
22、ng("play aa ",NULL,0,NULL);/ getchar(); elsechar ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,O,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);
23、/getchar();pp-;upordow n=2;void NextSo ng()if(NewOrder=0)if(circulatemode=1)if(Order>Am ount)Order=Am ount;char ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,O,NULL);mciSe ndStri ng(v,NULL,O,
24、NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/ getchar();elsechar ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,0,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("play aa &q
25、uot;,NULL,0,NULL);/ getchar();if(circulatemode=2)if(Order>Amou nt)/Order=1;char ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,O,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("play
26、 aa ",NULL,0,NULL);/ getchar();elsechar ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder-1.add);mciSe ndStri ng(ch,NULL,0,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/ getchar();el
27、seOrder=Am oun t+pp;if(circulatemode=1)if(Order<Amou nt)/有问题Order=Am ount;char ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder+1.add);mciSe ndStri ng(ch,NULL,O,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("play
28、aa ",NULL,0,NULL);/ getchar();elsechar ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder+1.add);mciSe ndStri ng(ch,NULL,0,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/ getchar();if(
29、circulatemode=2)if(Order<Amount) 有问题Order=begi n;char ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder+1.add);mciSe ndStri ng(ch,NULL,O,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/
30、getchar();elsechar ch200;mciSe ndStri ng("close aa", NULL, 0, NULL);sprintf(ch,"open "%s" alias aa",infoOrder+1.add);mciSe ndStri ng(ch,NULL,0,NULL);mciSe ndStri ng(v,NULL,O,NULL);mciSe ndStri ng("play aa ",NULL,0,NULL);/ getchar();pp+;upordow n=1;void SelectC
31、irculMode()int i=0;Show_GUI_SEVEN();scan f("%d",&i);if(i=1)circulatemode=1;if(i=2) circulatemode=2;void SaveExit()/*char dd20;char log50="testlog!"mciSe ndStri ng ("status aa positi on", dd, 20, 0);int d;d=atoi(dd);FILE *fp = NULL;fp = fope n( "D:SaveLog.txt&qu
32、ot;,"a");fwrite(log,1,50,fp);*/void PlayOperati on()int d;re: clrscr();ShowFileList();ShowFileDetails();Show_GUI_FOUR();printf(”请选择要进展的操作:"); epo:sca nf("%d", &d);fflush(stdi n);if(ERR_CheckE ntero(d)switch(d)case 1:Play();goto re;case 2:Stop();goto re;case 3:Resume();goto re;case 6:FastForward();goto re;case 8:FastBack(); goto re
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026AI应用市场分析报告-知识库领域-众智维科技
- 2025年湖南省汨罗市高考物理自主招生考试卷附答案详解【能力提升】
- 2026年江苏省兴化市高考物理模拟预测考试卷及完整答案详解(全优)
- 2026年河北省辛集市高考物理二轮专题测试卷及参考答案详解(突破训练)
- 2025年江苏省东台市高考物理一模考试卷附完整答案详解【全优】
- 2026年山西省永济市高考物理二模测试卷及参考答案详解一套
- 2025年福建省武夷山市高考物理周测试卷及参考答案详解(预热题)
- 2026 三年级语文上册掌声朗读指导课件
- 2026 三年级语文上册第三单元朗读训练课件
- 2025年江西省瑞金市高考物理二模试卷含完整答案详解【典优】
- 地块平整工程施工方案
- 《托育机构设施设备配置规范》
- epc项目全过程咨询服务方案
- 2025年中医执业助理医师考试试题+答案
- 2025年广西考试录用公务员计算机复习题及答案
- 人教版(2024)八年级上册地理第四章《中国的经济发展》大单元教学设计
- 弘历指标源码6个(仅提供源码)
- 黑龙江省齐齐哈尔市建华区2024-2025学年七年级下学期期末生物试题(含答案)
- 2025年广东省中考地理真题含答案
- CJ/T 194-2014非接触式给水器具
- T/CCOA 36-2020粮油仓储企业防火安全检查要求
评论
0/150
提交评论