多媒体之使用PlaySound播放音频

来源:互联网 发布:数据魔方是什么 编辑:程序博客网 时间:2024/05/22 13:39

使用播放音频比较简单,播放同目录下的LYNC_ringtone2.wav音频
在合适的地方添加如下代码

PlaySound(L"LYNC_ringtone2.wav", nullptr, SND_ASYNC);

如果需要停止播放,可以使用如下代码

PlaySound(nullptr, nullptr, SND_ASYNC);

需要注意的是PlaySound(L"", nullptr, SND_ASYNC);不会停止播放

以下为核心代码摘录
需要用VS新建Windows桌面应用程序,添加一个音频菜单,菜单下有两个子菜单,播放音频,停止音频

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){    switch (message)    {    case WM_COMMAND:        {            int wmId = LOWORD(wParam);            // 分析菜单选择:             switch (wmId)            {            // 播放音频消息            case ID_DISP_SOUND:                PlaySound(L"LYNC_ringtone2.wav", nullptr, SND_ASYNC);                break;            // 停止音频消息            case ID_STOP_SOUND:                // 注意:第一次参数放空字符串不会停止                PlaySound(nullptr, nullptr, SND_ASYNC);                break;            case IDM_ABOUT:                DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);                break;            case IDM_EXIT:                DestroyWindow(hWnd);                break;            default:                return DefWindowProc(hWnd, message, wParam, lParam);            }        }        break;    case WM_PAINT:        {            PAINTSTRUCT ps;            HDC hdc = BeginPaint(hWnd, &ps);            // TODO: 在此处添加使用 hdc 的任何绘图代码...            EndPaint(hWnd, &ps);        }        break;    case WM_DESTROY:        PostQuitMessage(0);        break;    default:        return DefWindowProc(hWnd, message, wParam, lParam);    }    return 0;}
阅读全文
0 0
原创粉丝点击