大连理工大学软件学院本科生课程设计报告
m_play.GetControls().play();qian=false;}
}点击播放时,也开始启动计时器 同理,前进的成员函数 void player::Onqianjing() 后退的成员函数 void player::Onhoutui() 停止得成员函数 void player::Ontingzhi()
停止时,时间进度变为0,同时计数器停止。 暂停的成员函数
void player::Onzanting() { CString strtemp;
GetDlgItemText(ID_zanting,strtemp); if (strtemp.Compare(\暂停\{
m_play.GetControls().pause(); SetDlgItemText(ID_zanting,\继续\ KillTimer(0); }
if (strtemp.Compare(\继续\{m_play.GetControls().play(); SetDlgItemText(ID_zanting,\暂停\SetTimer(0,500,NULL); } }
点击暂停时,显示继续,此时计数器停止。当点击继续时,计数器又开始运行,同时显示出暂停。
定义成员变量int shape=2;默认值为2,表示默认顺序播放。在循环,顺序,随机播放函数中,分别将shape赋值为1,2,3; 创建成员函数
void player::shunxubofang() {
CStdioFile *fsp; if(ntype==3)
–8–
大连理工大学软件学院本科生课程设计报告
{fsp=new CStdioFile(\else if(ntype==1)
{fsp=new CStdioFile(\else if(ntype==4)
{fsp=new CStdioFile(\else if(ntype==5)
{fsp=new CStdioFile(\ else if(ntype==6)
{fsp=new CStdioFile(\ else if(ntype==7)
{fsp=new CStdioFile(\ CString str; if(num1==0) {num1=num2;}
for(int i=0;i<=num1-1;i++) {
fsp->ReadString(str);} playname=str; fsp->Close(); delete fsp;
m_play.SetUrl(playname); num1--; }
此函数用于上一曲的顺序播放。根据媒体类型与播放列表的不同,而选择打开的文件不同。若选择的是第一曲,上一曲为最后一曲。下一曲的顺序播放函数与上面类似,不过若选中为最后一曲时,则下一曲为第一曲。与上面的函数不同在于
if(num1==num2-1) {num1=0;} else
num1++;
for(int i=0;i<=num1;i++) {
fsp->ReadString(str);} playname=str; fsp->Close(); delete fsp;
–9–
大连理工大学软件学院本科生课程设计报告
m_play.SetUrl(playname);
随机播放为在0到总地址数之间随机生成一个数,然后播放次数字所对应的音视屏。与上面的函数不同在于 srand(time(0));
int temp=rand()%num2; 上一曲的函数
oid player::On