ImageVerifierCode 换一换
格式:DOCX , 页数:28 ,大小:21.33KB ,
资源ID:4728424      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4728424.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(mfc播放器.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

mfc播放器.docx

1、mfc播放器class CMyApp:public CWinApppublic:virtual BOOL InitInstance();class CMainWindow:public CFrameWndpublic:afx_msg void OnMouseMove(UINT nFlags,CPoint point);protected:HWND m_hMyMCIWnd;CListBox ListBox1;CButton btn;CButton btn1;CButton btn2;CButton btn3;CButton clo;CButton open;CButton loop;CButto

2、n loop1;CButton loop2;CButton loop3;CPalette m_palette;void DoGradientFill(CDC* pDC,LPRECT pRect);CString GetSuffix(CString strFileName);CBrush m_brRedBrush;CBrush m_brush;CFont font;CFont font1;int x,y;int h;int work;int xop,yop;CString FileString;public:CMainWindow();protected:static const TCHAR s

3、zFilters1;static const TCHAR szFilters2;afx_msg void OnLButtonDown(UINT nFlags,CPoint point);afx_msg void OnLButtonUp(UINT nFlags,CPoint point);afx_msg BOOL OnMouseWheel(UINT nFlags,short zDelta,CPoint point);afx_msg int OnCreate(LPCREATESTRUCT lpcs);afx_msg LRESULT OnMCINotify(WPARAM wParam,LPARAM

4、lParam);afx_msg void OnBtnClick();afx_msg void OnBtnClick1();afx_msg void OnBtnClick2(); afx_msg void OnBtnClick3();afx_msg void OnBtnClick4();afx_msg void OnBtnClick5();afx_msg void OnCheckClick();afx_msg void OnCheckClick1();afx_msg void OnCheckClick2();afx_msg void OnCheckClick3();afx_msg void On

5、Timer(UINT nTimerID);afx_msg void OnSize(UINT nType,int cx,int cy);afx_msg BOOL OnEraseBkgnd(CDC* pDC);afx_msg HBRUSH OnCtlColor(CDC* pDC,CWnd *pWnd,UINT nCtlColor); DECLARE_MESSAGE_MAP();/窗体代码Player.cpp#include #include Player.h#include VolumeControl.h#include #include #include math.h#pragma commen

6、t(lib,vfw32.lib)#define IDC_LISTBOX 1000#define IDC_OPEN 1001#define IDC_OPEN1 1002#define IDC_OPEN2 1003#define IDC_OPEN3 1004#define IDC_OPEN4 1007#define IDC_CLOSE 1005#define IDC_MAIN 1006#define IDC_CHECK 1008#define IDC_CHECK1 1009#define IDC_CHECK2 1010#define IDC_CHECK3 1011CMyApp myApp;cons

7、t TCHAR CMainWindow:szFilters1=_T(Sound Files (*.mp3) | *.mp3|All Files (*.*) | *.*|);const TCHAR CMainWindow:szFilters2=_T(Movie Files (*.avi) | *.avi|All Files (*.*) | *.*|);UINT nSound;CString str1,str,name,filename;int sign=1,nVolume,length,count=0;ControlWindow *con;BOOL Eloop=FALSE,Eloop1=FALS

8、E,Eloop2=FALSE,flag=FALSE,Eloop3=FALSE;int Index=0;BOOL CMyApp:InitInstance()m_pMainWnd=new CMainWindow;m_pMainWnd-ShowWindow(m_nCmdShow);m_pMainWnd-UpdateWindow();return TRUE;BEGIN_MESSAGE_MAP(CMainWindow,CFrameWnd)ON_WM_CREATE()ON_BN_CLICKED(IDC_OPEN,OnBtnClick)ON_BN_CLICKED(IDC_OPEN1,OnBtnClick1)

9、ON_BN_CLICKED(IDC_OPEN2,OnBtnClick2)ON_BN_CLICKED(IDC_OPEN3,OnBtnClick3) ON_BN_CLICKED(IDC_CLOSE,OnBtnClick4)ON_BN_CLICKED(IDC_OPEN4,OnBtnClick5)ON_BN_CLICKED(IDC_CHECK,OnCheckClick)ON_BN_CLICKED(IDC_CHECK1,OnCheckClick1)ON_BN_CLICKED(IDC_CHECK2,OnCheckClick2)ON_BN_CLICKED(IDC_CHECK3,OnCheckClick3)O

10、N_WM_ERASEBKGND()ON_WM_CTLCOLOR()ON_WM_SIZE()ON_WM_TIMER()ON_WM_MOUSEWHEEL()ON_MESSAGE(MCIWNDF_NOTIFYMODE,OnMCINotify)ON_WM_LBUTTONDOWN()ON_WM_LBUTTONUP()ON_WM_MOUSEMOVE()END_MESSAGE_MAP()CMainWindow:CMainWindow()Create(NULL,_T(Player),WS_POPUPWINDOW,CRect(100,100,620,610),this);int CMainWindow:OnCr

11、eate(LPCREATESTRUCT lpcs)if (CFrameWnd:OnCreate(lpcs)=-1) return -1;/CoInitializeExCClientDC dc(this);:SetWindowPos(m_hWnd,HWND_TOPMOST,100,100,620,610,WS_EX_TOPMOST);con=new ControlWindow();/con-ShowWindow(SW_SHOW);if (dc.GetDeviceCaps(RASTERCAPS) & RC_PALETTE) struct LOGPALETTE lp; PALETTEENTRY ap

12、e63; pal; LOGPALETTE* pLP=(LOGPALETTE*) &pal; pLP-palVersion=0x300; pLP-palNumEntries=64; for (int i=0;ipalPalEntryi.peRed=0; pLP-palPalEntryi.peGreen=0; pLP-palPalEntryi.peBlue=255-(i*4); pLP-palPalEntryi.peFlags=0; m_palette.CreatePalette(pLP);font1.CreatePointFont(80,_T(MS Sans Serif);CRect rect;

13、rect.SetRect(110,450,210,465);loop.Create(单曲循环,WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON,rect,this,IDC_CHECK);loop.SetFont(&font1);rect.SetRect(110,470,210,485);loop1.Create(列表循环,WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON,rect,this,IDC_CHECK1);loop1.SetFont(&font1);rect.SetRect(200,450,300,465);loo

14、p2.Create(单曲播放,WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON,rect,this,IDC_CHECK2);loop2.SetFont(&font1);loop2.SetCheck(BST_CHECKED);rect.SetRect(200,470,300,485);loop3.Create(顺序播放,WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON,rect,this,IDC_CHECK3);loop3.SetFont(&font1);rect.SetRect(10,444,50,484);clo.Cre

15、ate(NULL,WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON | BS_ICON | WS_BORDER,rect,this,IDC_CLOSE);clo.SetIcon(AfxGetApp()-LoadIcon(_T(IDI_ICON5);rect.SetRect(460,444,500,484);open.Create(NULL,WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON | BS_ICON | WS_BORDER,rect,this,IDC_OPEN4);open.SetIcon(AfxGetApp()-Load

16、Icon(_T(IDI_ICON7);rect.SetRect(300,444,340,484);btn.Create(NULL,WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON | BS_ICON | WS_BORDER,rect,this,IDC_OPEN);btn.SetIcon(AfxGetApp()-LoadIcon(_T(IDI_ICON1);rect.SetRect(340,444,380,484);btn2.Create(NULL,WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON | BS_ICON | WS_BO

17、RDER,rect,this,IDC_OPEN2);btn2.SetIcon(AfxGetApp()-LoadIcon(_T(IDI_ICON3);rect.SetRect(380,444,420,484);btn1.Create(NULL,WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON | BS_ICON | WS_BORDER,rect,this,IDC_OPEN1);btn1.SetIcon(AfxGetApp()-LoadIcon(_T(IDI_ICON2);rect.SetRect(420,444,460,484);btn3.Create(NULL,

18、WS_CHILD | WS_VISIBLE | BS_DEFPUSHBUTTON | BS_ICON | WS_BORDER,rect,this,IDC_OPEN3);btn3.SetIcon(AfxGetApp()-LoadIcon(_T(IDI_ICON4);/bitmap.m_hObject=(HBITMAP):LoadImage(AfxGetInstanceHandle(),b.bmp,IMAGE_BITMAP,110,40,LR_LOADFROMFILE);/CClientDC dc1(this);/CBitmap bitmap;/bitmap.LoadBitmap(_T(IDB_B

19、ITMAP1);/CBrush brush(&bitmap);/dc1.FillRect(CRect(390,445,500,485),&brush);rect.SetRect(370,5,505,430);ListBox1.Create(WS_CHILD | WS_VISIBLE | LBS_STANDARD | WS_BORDER ,rect,this,IDC_LISTBOX);font.CreatePointFont(100,_T(MS Scans Serif); ListBox1.SetFont(&font);if (!MCIWndRegisterClass() MessageBox(

20、初始化未成功);/m_hMyMCIWnd=MCIWndCreate(this-m_hWnd,AfxGetInstanceHandle(),MCIWNDF_NOTIFYSIZE | MCIWNDF_NOERRORDLG | MCIWNDF_NOTIFYMODE | WS_CHILD | WS_VISIBLE | WS_BORDER | MCIWNDF_NOMENU,NULL);/m_hMyMCIWnd=MCIWndCreate(this-GetSafeHwnd(),AfxGetInstanceHandle(),WS_CHILD | WS_VISIBLE | MCIWNDF_NOPLAYBAR |

21、 MCIWNDF_NOMENU | MCIWNDF_NOTIFYMODE | WS_BORDER,NULL);/nVolume=MCIWndGetVolume(m_hMyMCIWnd);BOOL CMainWindow:OnEraseBkgnd(CDC* pDC)CRect rect;GetClientRect(&rect);:SetWindowPos(m_hMyMCIWnd,NULL,3,3,3,3,SWP_NOZORDER);CPalette* pOldPalette;if (HPALETTE)m_palette!=NULL) pOldPalette=pDC-SelectPalette(&

22、m_palette,FALSE); pDC-RealizePalette();DoGradientFill(pDC,&rect);if (HPALETTE) m_palette!=NULL) pDC-SelectPalette(pOldPalette,FALSE);return TRUE;void CMainWindow:OnBtnClick1()ListBox1.DeleteString(ListBox1.GetCurSel();void CMainWindow:OnBtnClick2()CFileDialog dlg(TRUE,_T(avi),_T(*.avi),OFN_FILEMUSTE

23、XIST | OFN_HIDEREADONLY | OFN_ALLOWMULTISELECT,szFilters2); if (dlg.DoModal()=IDOK) m_hMyMCIWnd=MCIWndCreate(this-GetSafeHwnd(),AfxGetInstanceHandle(),WS_CHILD | WS_VISIBLE | MCIWNDF_NOPLAYBAR | MCIWNDF_NOMENU | MCIWNDF_NOTIFYMODE | WS_BORDER,NULL); nVolume=MCIWndGetVolume(m_hMyMCIWnd); name=dlg.Get

24、FileName();MCIWndStop(m_hMyMCIWnd); ListBox1.AddString(name);filename=name;if (filename.GetLength()0 & GetSuffix(filename)=avi) nSound=MCIWndOpen(m_hMyMCIWnd,(LPCSTR)filename,NULL); :SetWindowPos(m_hMyMCIWnd,NULL,3,3,400,400,SWP_NOZORDER); HRGN hRgn1=:CreateRoundRectRgn(3,3,400,400,20,20); :SetWindo

25、wRgn(m_hMyMCIWnd,hRgn1,TRUE); if (nSound=0) MCIWndPlay(m_hMyMCIWnd); con-m_slider.EnableWindow(TRUE); con-m_slider1.EnableWindow(TRUE); SetTimer(1,1000,NULL); else /MCIWndDestroy(m_hMyMCIWnd); MessageBox(_T(没有读出文件),0,MB_OK);void CMainWindow:OnBtnClick3()for(int i=0;iCloseWindow();this-DestroyWindow(

26、);void CMainWindow:OnBtnClick5()count+;if (count%2=0) con-ShowWindow(SW_SHOW); open.SetIcon(AfxGetApp()-LoadIcon(IDI_ICON7);else con-ShowWindow(SW_HIDE); open.SetIcon(AfxGetApp()-LoadIcon(IDI_ICON8);void CMainWindow:OnBtnClick()CFileDialog dlg(TRUE,_T(mp3),_T(*.mp3),OFN_FILEMUSTEXIST | OFN_HIDEREADO

27、NLY | OFN_ALLOWMULTISELECT,szFilters1); if (dlg.DoModal()=IDOK) m_hMyMCIWnd=MCIWndCreate(this-GetSafeHwnd(),AfxGetInstanceHandle(),WS_CHILD | WS_VISIBLE | MCIWNDF_NOPLAYBAR | MCIWNDF_NOMENU | MCIWNDF_NOTIFYMODE | WS_BORDER,NULL); nVolume=MCIWndGetVolume(m_hMyMCIWnd); name=dlg.GetFileName(); MCIWndSt

28、op(m_hMyMCIWnd); ListBox1.AddString(name);filename=name;if (filename.GetLength()0 & GetSuffix(filename)=mp3) nSound=MCIWndOpen(m_hMyMCIWnd,(LPCSTR)filename,NULL); if (nSound=0) MCIWndPlay(m_hMyMCIWnd); con-m_slider.EnableWindow(TRUE); con-m_slider1.EnableWindow(TRUE); SetTimer(1,1000,NULL); else /MC

29、IWndDestroy(m_hMyMCIWnd); MessageBox(_T(没有读出文件),0,MB_OK);CString CMainWindow:GetSuffix(CString strFileName) return strFileName.Right(strFileName.GetLength()-strFileName.ReverseFind(.)-1); LRESULT CMainWindow:OnMCINotify(WPARAM wParam,LPARAM lParam)if(wParam=MCI_MODE_STOP) MessageBox(结束); /MCIWndDestroy(m_hMyMCIWnd);return TRUE;void CMainWindow:DoGradientFill(CDC* pDC,LPRECT pRect)CBrush *brush3255;TRYCBrush*

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1