VC++/MFC编程 2010-12-05 22:19:29 阅读48 评论0 字号:大中小 订阅
本文引用自凌箫夜曲 《如何在运用VC在里面添加背景音乐》
引用
凌箫夜曲 的 如何在运用VC在里面添加背景音乐先再VC里面建立一个工程,选择Dialog based,其他的采用默认设置,完成创建。
在对话框的初始化函数里面调用PlaySound函数,代码如下:
BOOL CPlaySoundDlg::OnInitDialog(){ CDialog::OnInitDialog();
// Add "About..." menu item to system menu.
// IDM_ABOUTBOX must be in the system command range. ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE); if (pSysMenu != NULL) { CString strAboutMenu; strAboutMenu.LoadString(IDS_ABOUTBOX); if (!strAboutMenu.IsEmpty()) { pSysMenu->AppendMenu(MF_SEPARATOR); pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu); } }
// Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon // TODO: Add extra initialization here PlaySound("D://project//PlaySound//res//霍元甲.wav", NULL,SND_ALIAS|SND_ASYNC);//背景音乐设置
return TRUE; // return TRUE unless you set the focus to a control}
同时注意要在此文件里面包含如下的声明:
#include "mmsystem.h"//导入声音头文件 #pragma comment(lib,"winmm.lib")//导入声音头文件库
对于函数PlaySound的使用上一篇日志已经做了详细的说明,在此不在说明。但补充说明一点的就是,调用PlaySound函数的时候,一般只能调用.wav格式的声音文件,其他格式的文件都不能播放。
如果想通过按钮来控制背景音乐的播放,那么可以通过设置三个按钮(播放,暂停,关闭)来进行控制。为这三个按钮设置BN_CLICHED消息函数:OnPlay(),OnPause(),OnClose().那么PlaySound函数就要放到有OnPlay()函数里面进行调用了,在OnPause()函数里面调用Stop()函数,在OnClose()函数里面调用Close()函数,注意这些函数的使用方法。
另外一点还需要注意的是,如果要设置背景音乐,同时还要进行别的操作,那么就一定要使用多线程来设置,否则在进行其他的操作的时候,背景音乐会自动停止。