mfc 选择音乐播放

32 篇文章 0 订阅
//添加全局变量

CString aa;
unsigned long int m_count;
DWORD cdlen;//某个音频文件的总时间长度
DWORD cdfrom,cdto;//歌曲的起点和终点


//添加函数



DWORD CMainFrame::getinfo(DWORD item)
{
	//MCI接口对象的状态
	MCI_STATUS_PARMS mcistatusparms;
	//歌曲格式
	mcistatusparms.dwCallback=(DWORD)GetSafeHwnd();
	//待获取的项目
	mcistatusparms.dwItem=item;
	mcistatusparms.dwReturn=0;
	//想多媒体设备发送指令,获取当前的状态参数
	mciSendCommand(m_count,MCI_STATUS,MCI_STATUS_ITEM,(DWORD)&mcistatusparms);
	return mcistatusparms.dwReturn; 
}


void CMainFrame::OnSelectMusic() 
{
	CFileDialog f(true);// 文件对话框处于打开状态
	// TODO: Add your command handler code here
	f.m_ofn.Flags |=512;//可以选取多个曲目
	f.m_ofn.lpstrFilter="All Support type\0*.*\0\0";//文件格式任意
	POSITION pos=f.GetStartPosition();//选取目标音频文件
	
	if(f.DoModal()==IDOK)//选定List控件中的添加位置,将文件添加在选定位置后边
	{	
		while (pos != NULL)
		{
			aa=f.GetNextPathName(pos);//将添加的音频文件路径存放在数组file中
			
			UpdateData(false);			
		}
	}
	mciSendString("close wave", 0, 0, NULL);
	mciSendCommand(m_count,MCI_CLOSE,0,NULL);//向多媒体设备发送消息,关闭多媒体设//备
	MCI_OPEN_PARMS mciopenparms;//打开
	MCI_PLAY_PARMS mciplayparms;//播放
	mciopenparms.lpstrElementName=aa;//播放路径
	
	mciopenparms.lpstrDeviceType=NULL;//文件类型
	mciSendCommand(0,MCI_OPEN,MCI_DEVTYPE_WAVEFORM_AUDIO,(DWORD)(LPVOID)&mciopenparms);//向MCI设备发送命令消息,包含歌曲文件的类型和路径
	m_count=mciopenparms.wDeviceID;//多媒体设备类型编号
	mciplayparms.dwCallback=(DWORD)GetSafeHwnd();//歌曲播放支持类型
	cdlen=getinfo(MCI_STATUS_LENGTH);    //得到曲目长度                                                                                                                                                                                                                                          
	cdto=MCI_MAKE_HMS(MCI_HMS_HOUR(cdlen),MCI_HMS_MINUTE(cdlen),MCI_HMS_SECOND(cdlen));//设置播放完毕某音频文件需要的时间n时n分n秒  
	mciplayparms.dwFrom=cdfrom;
	mciplayparms.dwTo=cdto;
	mciSendCommand(m_count,MCI_PLAY,MCI_TO|MCI_FROM,(DWORD)(LPVOID)& mciplayparms);//向多媒体设备发送播放文件命令
	UpdateData(false);
}



MFC音乐播放器是一款基于Microsoft Foundation Class(MFC)框架开发的音乐播放器软件。它支持显示播放列表,为用户提供了便利的音乐管理和播放功能。 在MFC音乐播放,显示播放列表的功能主要由两个部分组成:播放列表窗口和歌曲项。 首先,播放列表窗口是用于显示当前播放列表歌曲信息的主要窗口。它通常位于软件界面的一侧或底部,用户可以通过拖拽调整窗口大小或关闭窗口。在该窗口,用户可以看到当前播放列表的所有歌曲,包括歌曲名称、歌手、专辑等信息。用户可以通过单击、双击、拖拽等方式对歌曲进行操作,如播放、暂停、删除、添加等。 其次,歌曲项是显示在播放列表窗口的每一首歌曲的独立项。每一个歌曲项通常包含歌曲封面、歌曲名称、歌手名等元素,用户可以通过点击歌曲项来选择和操作歌曲。用户也可以通过拖拽歌曲项的顺序来调整播放列表歌曲播放顺序。 在MFC音乐播放,用户可以通过选择导入本地音乐文件或通过网络加载歌曲来创建播放列表。用户可以随时对播放列表进行编辑,添加新的歌曲或删除已有的歌曲播放列表歌曲会按照添加的顺序进行播放,用户可以通过点击歌曲项或使用播放器提供的控制按钮来控制音乐播放。 总结起来,MFC音乐播放器通过显示播放列表的方式,为用户提供了方便的音乐管理和播放功能。用户可以在播放列表查看和管理已添加的歌曲,通过简单的操作就能实现音乐播放、暂停、删除、添加等功能,让用户能够轻松地享受音乐
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值