手把手教您用MFC做MP3音乐播放器

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

打开vc6.0,建立如图所示mfc工程文件

选择基于对话框的确定

删除所有空间,建立如图所示对话框

属性如下:

播放IDC_open;

添加IDC_fileopen;

暂停IDC_pause;

删除IDC_del;

停止IDC_stop;

退出IDC_exit;

音乐名编辑框IDC_filename;音量控制滑块IDC_SLIDER1;音量控制编辑框IDC_vol;

建立类向导对应如下:

在onpaint函数下添加代码

void CMp3Dlg::OnPaint()

{

if (IsIconic())

{

CPaintDC dc(this); // device context for painting

SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

// Center icon in client rectangle

int cxIcon = GetSystemMetrics(SM_CXICON);

int cyIcon = GetSystemMetrics(SM_CYICON);

CRect rect;

GetClientRect(&rect);

int x = (rect.Width() - cxIcon + 1) / 2;

int y = (rect.Height() - cyIcon + 1) / 2;

// Draw the icon

dc.DrawIcon(x, y, m_hIcon);

}

else

{

//CDialog::OnPaint();

CPaintDC dc(this);

CRect rect;

GetClientRect(&rect);

CDC dcMem;

dcMem.CreateCompatibleDC(&dc);

CBitmap bmpBackground;

bmpBackground.LoadBitmap(IDB_BITMAP6); /IDB_BITMAP6是你的位图地址

BITMAP bitmap;

bmpBackground.GetBitmap(&bitmap);

CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground);

dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,bitmap.bmWidth,bitmap.bmHeight ,SRCCOPY);

}

}

编译运行,你就会看到背景有图片了。

插入-类,找到geneticclass,类名mp3.cpp

你会发现在头文件中多了一个mp3.h文件

在mp3.h文件中添加代码如下

// Mp3.h: interface for the Mp3 class.

//

//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MP3_H__20D325E5_A96A_43FE_A485_92F57C68DD0D__INCLUDED_)

#define AFX_MP3_H__20D325E5_A96A_43FE_A485_92F57C68DD0D__INCLUDED_

#if _MSC_VER > 1000

#pragma once

#endif // _MSC_VER > 1000

#include "Mmsystem.h"

class Mp3

{

public:

Mp3();

virtual ~Mp3();

HWND m_hWnd; //¼Ç¼µ±Ç°´°¿ÚµÄ¾ä±ú

DWORD DeviceID;//Ö¸¶¨²¥·ÅÒôÀÖµÄÉ豸ID

MCI_OPEN_PARMS mciopenparms; //Ö¸¶¨´ò¿ªÒôÀÖÎļþµÄ²ÎÊý

void Load(HWND hwnd,CString Strfilepath);

DWORD getinformation(DWORD item);

void Play();

void Pause();

void resum();

void Stop();

};

#endif // !defined(AFX_MP3_H__20D325E5_A96A_43FE_A485_92F57C68DD0D__INCLUDED_) 在mp3.cpp中添加如下代码

// Mp3.cpp: implementation of the Mp3 class.

//

//////////////////////////////////////////////////////////////////////

#include "stdafx.h"

#include "Mp3²¥·ÅÆ÷.h"

#include "Mp3.h"

#ifdef _DEBUG

#undef THIS_FILE

static char THIS_FILE[]=__FILE__;

#define new DEBUG_NEW

#endif

相关文档
最新文档