当前位置:科技动态 > vs2010音乐播放控件_vs2010播放音乐

vs2010音乐播放控件_vs2010播放音乐

  • 发布:2023-10-05 11:00

通过vs2010播放音乐

1。添加window mediaplayer的dll,在工具菜单中找到工具箱,在com下添加windowmediaplayer的dll并勾选,工具箱就会显示该控件。

2。创建一个表单,拖动该控件,然后添加一个按钮。

3。按钮点击时间代码如下

?OpenFileDialog dialg = new OpenFileDialog();????????? dialg.AddExtension = true;????????? dialg.CheckFileExists = true;???? ?????? dialg.CheckPathExists = true;????????? dialg.Filter = "MP3 文件 (*.mp3)|*.mp3";??????? ??? dialg.DefaultExt = "*.mp3";????????? if (dialg.ShowDialog() == DialogResult.OK)?????????{? ???????????? axWindowsMediaPlayer1.URL = dialg.FileName;???????????? }

4。运行后,选择加载的mp3文件,点击播放器开始播放。

转载于:https://www.sychzs.cn/shllmlovechh/1623652

通过vs2010播放音乐

1。添加window mediaplayer的dll,在工具菜单中找到工具箱,在com下添加windowmediaplayer的dll并勾选,工具箱就会显示该控件。

2。创建一个表单,拖动该控件,然后添加一个按钮。

3。按钮点击时间代码如下

?OpenFileDialog dialg = new OpenFileDialog(); ?????????? dialg.AddExtension = true; ?????????? dialg.CheckFileExists = true; ???? ?????? dialg.CheckPathExists = true; ?????????? dialg.Filter = "MP3 文件 (*.mp3)|*.mp3"; ?????? ??? dialg.DefaultExt = "*.mp3"; ?????????? if (dialg.ShowDialog() == DialogResult.OK) ?????????? {? ???????????? axWindowsMediaPlayer1.URL = dialg.FileName; ???????????? }

4。运行后,选择加载的mp3文件,点击播放器开始播放。

// 古董音乐播放器:主机

#include

#include

void PopFileInitialize(HWND);

BOOL PopFileOpenDlg(HWND, PTSTR, PTSTR);

void paly_mp3(char *dress);

无效pause_mp3();

无效reset_mp3();

结构

{

int iStyle;

TCHAR *szText;

}

按钮[] = {

BS_PUSHBUTTON,文本(“打开”),

BS_PUSHBUTTON,文本(“播放”),

BS_PUSHBUTTON,文本(“暂停”),

BS_PUSHBUTTON,文本(“重置”),

BS_PUSHBUTTON, TEXT("退出"),

};

#define NUM(按钮尺寸/按钮尺寸[0])

TCHAR szAppName[] = TEXT("BtnLook");

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,?

PSTR szCmdLine,int iCmdShow)

{

HWND? ? hwnd;

味精? ? ?消息;

WNDCLASS wndclass;

www.sychzs.cn = CS_HREDRAW | CS_VREDRAW;

wndclass.lpfnWndProc = WndProc;

wndclass.cbClsExtra = 0;

wndclass.cbWndExtra = 0;

wndclass.hInstance = hInstance;

wndclass.hIcon = (HICON)::LoadImage(NULL, "bitbug_favicon.ico", IMAGE_ICON, 0, 0, LR_DEFAULTSIZE | LR_LOADFROMFILE);

wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);

//wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);

wndclass.hbrBackground = CreateSolidBrush(RGB(255,0,0));

wndclass.lpszMenuName = NULL;

wndclass.lpszClassName = szAppName;

if (!RegisterClass(&wndclass))

{

MessageBox(NULL, TEXT("该程序需要 Windows NT!"), szAppName, MB_ICONERROR);

返回0;

}

hwnd = CreateWindow(szAppName, TEXT("餐饮音乐播放器"),

WS_OVERLAPPEDWINDOW,

200, 200,

290、160、

NULL, NULL, hInstance, NULL);

ShowWindow(hwnd, iCmdShow);

更新窗口(hwnd);

while (GetMessage(&msg, NULL, 0, 0))

{

翻译消息(&msg);

DispatchMessage(&msg);

}

返回msg.wParam;

}

LRESULT CALLBACK WndProc(HWND hwnd, UINT 消息, WPARAM wParam, LPARAM lParam)

{

静态 HWND hwndButton[NUM];

静态RECT矩形;

静态HDC hdc;

静态 TCHAR szBuffer[50];

static TCHAR szTop[] = TEXT("当前播放歌曲:");

静态 TCHAR szFileName[MAX_PATH], szTitleName[MAX_PATH];

static int cxChar, cyChar;

静态 PAINTSTRUCT ps;

静态整数i;

开关(消息)

{

案例WM_CREATE:

cxChar = LOWORD(GetDialogBaseUnits());

cyChar = HIWORD(GetDialogBaseUnits());

对于 (i = 0; i < NUM; i++)

hwndButton[i] = CreateWindow(TEXT("按钮"),

按钮[i].szText,

WS_CHILD | WS_VISIBLE | WS_VISIBLE |按钮[i].iStyle,

cyChar*(1 + 3 * i), cyChar * 5,

6 * cxChar、7 * cyChar / 4.5、

hwnd, (HMENU)i, ((LPCREATESTRUCT)lParam)->hInstance, NULL);

PopFileInitialize(hwnd);

EnableWindow(GetDlgItem(hwnd, 1), FALSE);

EnableWindow(GetDlgItem(hwnd, 2), FALSE);

EnableWindow(GetDlgItem(hwnd, 3), FALSE);

返回0;

案例WM_SIZE:

rect.left = 24 * cxChar;

www.sychzs.cn = 2 * cyChar;

rect.right = LOWORD(lParam);

rect.bottom = HIWORD(lParam);

返回0;

案例 WM_PAINT:

InvalidateRect(hwnd, &rect, TRUE);

hdc = BeginPaint(hwnd, &ps);

SetBkMode(hdc, 透明);

TextOut(hdc, 2 * cxChar, cyChar, szTop, lstrlen(szTop));

EndPaint(hwnd, &ps);

返回0;

案例 WM_DRAWITEM:

返回0;

案例WM_COMMAND:

开关 (LOWORD(wParam))

{

案例0:

if (!PopFileOpenDlg(hwnd, szFileName, szTitleName))

{

MessageBox(hwnd, TEXT("未选择音乐歌曲!"), szTitleName, 0);

szFileName[0] = '\0';

szTitleName[0] = '\0';

}

否则

{

hdc = GetDC(hwnd);

TextOut(hdc, 2 * cxChar, 3 * cyChar, szTitleName, lstrlen(szTitleName));

EnableWindow(GetDlgItem(hwnd, 0), FALSE);

EnableWindow(GetDlgItem(hwnd, 1), TRUE);

EnableWindow(GetDlgItem(hwnd, 2), TRUE);

EnableWindow(GetDlgItem(hwnd, 3), TRUE);

}

返回0;

案例1:

paly_mp3(szFileName);

返回0;

案例2:

pause_mp3();

返回0;

案例3:

reset_mp3();

EnableWindow(GetDlgItem(hwnd, 0), TRUE);

EnableWindow(GetDlgItem(hwnd, 1), FALSE);

EnableWindow(GetDlgItem(hwnd, 2), FALSE);

szFileName[0] = '\0';

szTitleName[0] = '\0';

返回0;

案例4:

退出(0);

返回0;

}

返回0;

案例 WM_DESTROY:

退出(0);

返回0;

}

return DefWindowProc(hwnd, message, wParam, lParam);

}

///*****打开文件对话框********/ #include #include ? //通信相关的连接对话框 static OPENFILENAME ofn;// 将对话框实现为类 void PopFileInitialize(HWND hwnd) { static TCHAR szFilter[] = TEXT("mp3 Files (*.MP3)\0*.mp3\ 0") \ TEXT("wma Files (*.WMA) \0*.wma\0") \ TEXT("ALL Files (*.*)\0*.*\0\0");//哪些文件播放时,文本强制转换,可播放n的所有MP3文件。lStructSize = sizeof(OPENFILENAME); ofn.hwndOwner = hwnd; ofn.hInstance = NULL; ofn.lpstrFilter = szFilter; ofn.lpstrCustomFilter = NULL; ofn.nMaxCustFilter = 0; ofn.nFilterIndex = 0; ofn.lpstrFile = NULL ofn.nMaxFile = MAX_PATH; ofn.lpstrFileTitle = NULL; ofn.nMaxFileTitle = MAX_PATH; ofn.lpstrInitialDir = NULL; ofn.lpstrTitle = NULL; ofn.Flags = 0; ofn.nFileOffset = 0; .lpstrDefExt = TEXT("txt"); ofn.lCustData = 0L; ofn.lpfnHook = NULL; ofn.lpTemplateName = NULL; } BOOL PopFileOpenDlg(HWND hwnd, PTSTR pstrFileName, PTSTR pstrTitleName) { ofn.hwndOwner = hwnd;奥芬。 lpstrFile = pstr文件名; ofn.lpstrFileTitle = pstrTitleName; ofn.Flags = OFN_HIDEREADONLY | ofn.Flags = OFN_HIDEREADONLY | OFN_CREATEPROMPPT;返回 GetOpenFileName(&ofn); }

/***实现播放*****/ /*** 播放、暂停、复位*****/ #include #include #include #include #include #define SHOWMSG(_msg) MessageBox(NULL,_msg,TEXT("msg"),MB_OK) MCI_PLAY_PARMS mciPlay; UINT 设备ID; MCI_OPEN_PARMS mciOpen; #pragma comment(lib,"winmm.lib")? //播放MP3音乐? void paly_mp3(char *dress) { char buf[128] = { 0 }; MCIERROR mciError; mciOpen.lpstrDeviceType = "mpegvideo"; mciOpen.lpstrElementName = 衣服; ? ? ? ? ?// 播放文件地址,支持mp3格式 mciError = mciSendCommand(0, MCI_OPEN, MCI_OPEN_TYPE | MCI_OPEN_ELEMENT, (DWORD)&mciOpen);如果(mciError){ mciGetErrorString(mciError,buf,128); } DeviceID = mciOpen.wDeviceID; mciError = mciSendCommand(DeviceID, MCI_PLAY, 0, (DWORD)&mciPlay); if (mciError) { MessageBox(NULL, TEXT("发送 MCI_Play 命令失败!"), NULL, 0); } } // 暂停音乐播放 voidpause_mp3() { DWORD dwReturn = 0; dwReturn = mciSendCommand(DeviceID, MCI_PAUSE, 0, (DWORD)&mciPlay); if (dwReturn){ SHOWMSG("MCI 停止错误r."); } } // 重置 void reset_mp3() { DWORD dwReturn = 0; dwReturn = mciSendCommand(DeviceID, MCI_STOP, 0, (DWORD)&mciPlay); if (dwReturn){ SHOWMSG("MCI 停止错误。" ); } dwReturn = mciSendCommand(DeviceID, MCI_CLOSE, 0, (DWORD)&mciPlay); if (dwReturn){ SHOWMSG("MCI 关闭错误。"); } }

相关文章