⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 simplemp3dlg.h

📁 一些关于C++开发的多媒体制作书籍的源代码
💻 H
字号:
/*
* Copyright (c) 2002, Bcdliang
* All rights reserved.
*
* 文件名称:SimpleMP3Dlg.h
* 摘    要:类CSimpleMP3Dlg的声明
*
* 当前版本:1.01
* 作    者:LIANG Zheng
* 完成日期:2002年8月11日
*/

//{{AFX_INCLUDES()
//}}AFX_INCLUDES

#if !defined(AFX_SIMPLEMP3DLG_H__499E8995_FDDF_4DF1_BE54_5559ADC36E54__INCLUDED_)
#define AFX_SIMPLEMP3DLG_H__499E8995_FDDF_4DF1_BE54_5559ADC36E54__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <mmsystem.h>
#include <strstrea.h>
#include "MP3ListBox.h"
#include "ID3TAG.h"
#include "MCIMP3.h"
#include "ScrollLabel.h"
#include "PicButton.h"
#include "SimpleMP3SliderCtrl.h"
#include "AnimateTrayIcon.h"

// User define msg
#define MYWM_TRAYICON                   WM_USER + 10
#define MYWM_LISTITEMPLAY               WM_USER + 11
#define MYWM_LISTITEMDELETE             WM_USER + 12
#define MYWM_LISTITEMINFO               WM_USER + 13
#define MYWM_LISTOPENEDITEMMOVE         WM_USER + 14

const UINT TIMER1 = 1;

/////////////////////////////////////////////////////////////////////////////
// CSimpleMP3Dlg dialog

class CSimpleMP3Dlg : public CDialog
{
// Construction
public:
	void Exit();

	void OpenM3U();
	void CloseM3U();
	void SaveM3U();
	void SaveM3UAs();
	void NewM3U();
	
	BOOL Open(UINT uItemID);
	BOOL Play();
	BOOL Pause();
	BOOL Resume();
	BOOL Stop();

	void AddFile(void);
	void AddDir();

	void SetTime(DWORD dwTime);

	void ReadProfile();
	void WriteProfile();
	
	CSimpleMP3Dlg(CWnd* pParent = NULL);	// standard constructor
	~CSimpleMP3Dlg();						// standard deconstructor

// Dialog Data
	//{{AFX_DATA(CSimpleMP3Dlg)
	enum { IDD = IDD_SIMPLEMP3_DIALOG };
	CMP3ListBox	m_List;
	CScrollLabel	m_Title;
	CScrollLabel	m_Time;
	CSimpleMP3SliderCtrl	m_Slider;
	CPicButton	m_Play;
	CPicButton	m_Pause;
	CPicButton	m_Stop;
	CPicButton	m_Prev;
	CPicButton	m_Step;
	CPicButton	m_Next;
	CPicButton	m_Back;
	CPicButton	m_Repeat;
	CPicButton	m_Random;
	CPicButton	m_Loop;
	CPicButton	m_Mute;
	CPicButton	m_M3u;
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CSimpleMP3Dlg)
	public:
	virtual BOOL PreTranslateMessage(MSG* pMsg);
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	CAnimateTrayIcon *m_pTrayIcon;		// 任务栏图标对象的指针
	HACCEL m_hAccTable;		//加速键表
	CBrush m_bkBrush;		//背景刷
	BOOL m_bIconized;		//是否已经缩到任务栏
	MCIMP3 m_mcimp3;		//播放MP3的接口
	BOOL m_bElapse;				//时间显示是否为逝去时间
	CString m_strDefaultDir;	//程序文件所在的目录
	int m_iWidth;		//窗口与List的宽度之差
	int m_iHeight;		//窗口与List的高度之差
	int m_iMinWidth;	//窗口的最小宽度
	int m_iMinHeight;	//窗口的最小高度
	CToolTipCtrl m_tooltip;
//	void OnOK( );

	// 初始化界面
	void InitInterface();

	// 取得将要播放的前一/后一首乐曲的ID
	int GetPrev();
	int GetNext();
	// 产生随机ID
	int GetRandID(UINT uItemCount);


	//已打开的M3U文件的路径
	CString m_strM3UPath;
	
	//已打开的乐曲的ID
	int m_iOpenedID;
	
	afx_msg void OnContextMenu(CWnd*, CPoint point);
	HICON m_hIcon;

	// Generated message map functions
	//{{AFX_MSG(CSimpleMP3Dlg)
	virtual BOOL OnInitDialog();
	virtual void OnOK();
	virtual void OnCancel();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnDestroy();
	afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
	afx_msg void OnMute();
	afx_msg void OnPause();
	afx_msg void OnPlay();
	afx_msg void OnStop();
	afx_msg void OnPrev();
	afx_msg void OnBack();
	afx_msg void OnStep();
	afx_msg void OnNext();
	afx_msg void OnTimer(UINT nIDEvent);
	afx_msg void OnSize(UINT nType, int cx, int cy);
	afx_msg void OnMyTrayIcon(WPARAM wParam, LPARAM lParam);
	afx_msg void OnTime();
	afx_msg void OnM3u();
	afx_msg void OnTitle();
	afx_msg HBRUSH CtlColor(CDC* pDC, UINT nCtlColor);
	afx_msg UINT OnNcHitTest(CPoint point);
	afx_msg void OnListItemPlay(WPARAM wParam, LPARAM lParam);
	afx_msg void OnListItemDelete(WPARAM wParam, LPARAM lParam);
	afx_msg void OnListItemInfo(WPARAM wParam, LPARAM lParam);
	afx_msg void OnListOpenedItemMove(WPARAM wParam, LPARAM lParam);
	afx_msg void OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI);
	afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnDialogPopup();
	afx_msg void OnM3uPopup();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_SIMPLEMP3DLG_H__499E8995_FDDF_4DF1_BE54_5559ADC36E54__INCLUDED_)


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -