实例介绍
【实例截图】
【核心代码】
#include "stdafx.h"
#include "QQMusic.h"
#include "QQMusicDlg.h"
#include "afxdialogex.h"
#define WM_MSG_TRAY (WM_USER 1)
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
class CAboutDlg : public CDialogEx
{
public:
CAboutDlg();
#ifdef AFX_DESIGN_TIME
enum { IDD = IDD_ABOUTBOX };
#endif
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
// 实现
protected:
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialogEx(IDD_ABOUTBOX)
{
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx)
END_MESSAGE_MAP()
CQQMusicDlg::CQQMusicDlg(CWnd* pParent)
: CDialogEx(IDD_QQMUSIC_DIALOG, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
m_pProgressBar = NULL;
m_pTabManagerWnd = NULL;
m_pRecentSongList = NULL;
m_pLocalSongWnd = NULL;
m_pMusicHallWnd = NULL;
m_pMvClassWnd = NULL;
m_pLoveSongWnd = NULL;
m_ReadLrcWnd = NULL;
m_pCurWnd = NULL;
m_hSystemIcon = (HICON)LoadImage(AfxGetInstanceHandle(), _T("E:\\VC_Project\\QQMusic\\QQMusic\\res\\QQMusic.ico"), IMAGE_ICON, 0, 0, LR_LOADFROMFILE);
}
void CQQMusicDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CQQMusicDlg, CDialogEx)
ON_WM_SYSCOMMAND()
ON_WM_DESTROY()
ON_WM_SIZE()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_MESSAGE(WM_TABCTRL_MANAGER_LBUTTONDOWN,&CQQMusicDlg::OnLTabButtonDown)
ON_MESSAGE(WM_MSG_TRAY, &CQQMusicDlg::OnMsgTray)
END_MESSAGE_MAP()
LRESULT CQQMusicDlg::OnMsgTray(WPARAM wParam, LPARAM lParam)
{
switch (lParam)
{
case WM_LBUTTONDOWN:
{
ShowWindow(SW_SHOWNORMAL);
}
break;
case WM_RBUTTONDOWN:
{
//m_pTryMenu.PopMenu(200, FALSE);
}
break;
}
return TRUE;
}
LRESULT CQQMusicDlg::OnLTabButtonDown(WPARAM wParam, LPARAM lParam)
{
switch (wParam)
{
case 0:
switch (lParam)
{
case 0:
if (m_pCurWnd != m_pMusicHallWnd)
{
m_pCurWnd->ShowWindow(SW_HIDE);
m_pCurWnd = m_pMusicHallWnd;
}
break;
case 1:
if (m_pCurWnd != m_pMvClassWnd)
{
m_pCurWnd->ShowWindow(SW_HIDE);
m_pCurWnd = m_pMvClassWnd;
}
break;
case 2:
break;
default:
break;
}
break;
case 1:
{
switch (lParam)
{
case 0:
if (m_pCurWnd != m_pLoveSongWnd)
{
m_pCurWnd->ShowWindow(SW_HIDE);
m_pCurWnd = m_pLoveSongWnd;
}
break;
case 1:
if (m_pCurWnd != m_pLocalSongWnd)
{
m_pCurWnd->ShowWindow(SW_HIDE);
m_pCurWnd = m_pLocalSongWnd;
}
break;
case 2:
if (m_pCurWnd != m_pPlayHistoryWnd)
{
m_pCurWnd->ShowWindow(SW_HIDE);
m_pCurWnd = m_pPlayHistoryWnd;
}
break;
case 3:
break;
default:
break;
}
}
break;
case 2:
break;
default:
break;
}
m_pCurWnd->ShowWindow(SW_SHOW);
return 0;
}
BOOL CQQMusicDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
BOOL bNameValid;
CString strAboutMenu;
bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);
ASSERT(bNameValid);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
SetIcon(m_hIcon, TRUE);
SetIcon(m_hIcon, FALSE);
CRect rect;
GetClientRect(rect);
m_pProgressBar = new CCustomProgressBar();
m_pProgressBar->Create(WS_CHILD | WS_VISIBLE, CRect(rect.left 300, rect.bottom - 40, rect.left 700, rect.bottom - 30), this, IDC_PROGRESSBAR_WND);
m_pProgressBar->SetSongLength(1000);
m_pTabManagerWnd = new CTabCtrlManagerWnd();
m_pTabManagerWnd->Create(WS_CHILD | WS_VISIBLE, CRect(0, rect.top 100, 200, rect.bottom -80), this, IDC_TAB_MANAGER_WND);
INT nRet = m_pTabManagerWnd->InsertSongClass(_T("在线音乐"));
m_pTabManagerWnd->InsertSongType(nRet,_T("音乐馆"));
m_pTabManagerWnd->InsertSongType(nRet, _T("MV"));
m_pTabManagerWnd->InsertSongType(nRet, _T("个性电台"));
nRet = m_pTabManagerWnd->InsertSongClass(_T("我的音乐"));
m_pTabManagerWnd->InsertSongType(nRet, _T("我喜欢"));
m_pTabManagerWnd->InsertSongType(nRet, _T("本地和下载"));
m_pTabManagerWnd->InsertSongType(nRet, _T("播放历史"));
m_pTabManagerWnd->InsertSongType(nRet, _T("试听列表"));
nRet = m_pTabManagerWnd->InsertSongClass(_T("我创建的歌单"));
m_pTabManagerWnd->InsertSongType(nRet, _T("我最爱听"));
TCHAR path[255];
GetModuleFileName(NULL, path, 255);
CString fileName(path);
int nIn = fileName.ReverseFind('\\');
path[nIn] = '\0';
fileName = CString(path) _T("\\photo\\1.bmp");
m_pMusicHallWnd = new CMusicHallWnd();
m_pMusicHallWnd->Create(WS_CHILD, CRect(rect.left 201, rect.top 30, rect.right, rect.bottom - 80), this, IDC_MUSICHALL_WND);
m_pMusicHallWnd->InsertSongerArea(_T("内地"));
m_pMusicHallWnd->InsertSongerArea(_T("港台"));
m_pMusicHallWnd->InsertSongerArea(_T("欧美"));
m_pMusicHallWnd->InsertSongerArea(_T("日本"));
m_pMusicHallWnd->InsertSongerArea(_T("韩国"));
m_pMusicHallWnd->InsertSongerArea(_T("其他"));
m_pMusicHallWnd->InsertSonger(_T("流行"));
m_pMusicHallWnd->InsertSonger(_T("流行"));
m_pMusicHallWnd->InsertSonger(_T("嘻哈"));
m_pMusicHallWnd->InsertSonger(_T("摇滚"));
m_pMusicHallWnd->InsertSonger(_T("电子"));
m_pMusicHallWnd->InsertSonger(_T("民谣"));
m_pMusicHallWnd->InsertSonger(_T("R&B"));
m_pMusicHallWnd->InsertSonger(_T("民歌"));
m_pMusicHallWnd->InsertSonger(_T("轻音乐"));
m_pMusicHallWnd->InsertSonger(_T("爵士"));
m_pMusicHallWnd->InsertSonger(_T("古典"));
m_pMusicHallWnd->InsertSonger(_T("乡村"));
m_pMusicHallWnd->InsertSonger(_T("蓝调"));
m_pMusicHallWnd->InsertRadioItem(_T("薛之谦"), fileName);
m_pMusicHallWnd->InsertRadioItem(_T("周杰伦"), fileName);
m_pMusicHallWnd->InsertRadioItem(_T("林俊杰"), fileName);
m_pMusicHallWnd->InsertRadioItem(_T("杨综纬"), fileName);
m_pMusicHallWnd->InsertRadioItem(_T("李玉刚"), fileName);
m_pMusicHallWnd->InsertRadioItem(_T("张杰"), fileName);
m_pMusicHallWnd->InsertRadioItem(_T("陈奕迅"), fileName);
m_pMusicHallWnd->InsertRadioItem(_T("赵雷"), fileName);
INT_PTR nIndex = m_pMusicHallWnd->InsertRadioClassItem(_T("热门"));
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("个性电台"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("热歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("一人一首招牌歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("KTV必点歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("车载低影炮"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("经典翻唱"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("伤感"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("咖啡馆"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("英语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("网络流行"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("店铺"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("DJ热碟"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("劲歌热舞"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("新歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("经典"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("抒情英文歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("轻音乐"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("粤语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("80后"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("劲歌炫舞"), fileName);
nIndex = m_pMusicHallWnd->InsertRadioClassItem(_T("上午"));
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("好好工作"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("陪你看书"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("轻松一刻"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("满满正能量"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("来一杯咖啡"), fileName);
nIndex = m_pMusicHallWnd->InsertRadioClassItem(_T("最近"));
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("个性电台"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("DJ热碟"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("一人一首招牌歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("KTV必点歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("网络流行"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("日语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("古筝"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("咖啡馆"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("热歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("抒情英文歌"), fileName);
nIndex = m_pMusicHallWnd->InsertRadioClassItem(_T("情感"));
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("伤感"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("安静"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("心痛"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("快乐"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("励志"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("甜蜜"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("疗伤"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("思念"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("感动"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("寂寞"), fileName);
nIndex = m_pMusicHallWnd->InsertRadioClassItem(_T("主题"));
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("热歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("一人一首招牌歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("KTV必点歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("车载低音炮"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("经典翻唱"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("网络流行"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("DJ热碟"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("热歌劲舞"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("经典"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("抒情英文歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("新歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("劲歌热舞"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("老歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("网络伤感情歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("神曲"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("伤感中国风"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("男人情歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("二次元"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("HIGH翻电音"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("浪漫韩剧"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("老情歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("经典英文歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("武侠情结"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("伤感粤语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("经典现场"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("超赞纯人声"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("沙发音乐"), fileName);
nIndex = m_pMusicHallWnd->InsertRadioClassItem(_T("曲风"));
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("草原风"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("古风"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("民谣"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("Hip-Hop"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("中国风"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("舞曲"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("流行"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("R&B"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("乡村"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("民歌"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("电子"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("摇滚"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("Bossa Nova"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("爵士"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("古典"), fileName);
nIndex = m_pMusicHallWnd->InsertRadioClassItem(_T("语言"));
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("英语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("粤语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("怀旧粤语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("怀旧华语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("怀旧英语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("华语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("韩语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("日语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("闽南语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("泰语"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("法语"), fileName);
nIndex = m_pMusicHallWnd->InsertRadioClassItem(_T("人群"));
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("80后"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("90后"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("儿童"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("00后"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("70后"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("女神"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("男神"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("上班族"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("暖男"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("文艺青年"), fileName);
nIndex = m_pMusicHallWnd->InsertRadioClassItem(_T("乐器"));
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("钢琴"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("古筝"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("萨克斯"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("笛子"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("吉他"), fileName);
m_pMusicHallWnd->InsertRadioItem(nIndex, _T("小提琴"), fileName);
m_pMvClassWnd = new CMVClassWnd();
m_pMvClassWnd->Create(WS_CHILD, CRect(rect.left 201, rect.top 30, rect.right, rect.bottom - 80), this, IDC_MVCLASS_WND);
m_pMvClassWnd->InsertItem(_T("推荐"));
m_pMvClassWnd->InsertItem(_T("腾讯独家"));
m_pMvClassWnd->InsertItem(_T("排行榜"));
m_pMvClassWnd->InsertItem(_T("MV库"));
m_pMvClassWnd->InsertArea(_T("全部"));
m_pMvClassWnd->InsertArea(_T("内地"));
m_pMvClassWnd->InsertArea(_T("港台"));
m_pMvClassWnd->InsertArea(_T("欧美"));
m_pMvClassWnd->InsertArea(_T("韩国"));
m_pMvClassWnd->InsertArea(_T("日本"));
m_pMvClassWnd->InsertArea(_T("其他"));
m_pMvClassWnd->InsertType(_T("全部"));
m_pMvClassWnd->InsertType(_T("官方版"));
m_pMvClassWnd->InsertType(_T("隐私原声"));
m_pMvClassWnd->InsertType(_T("舞蹈"));
m_pMvClassWnd->InsertType(_T("混音版"));
m_pMvClassWnd->InsertType(_T("KTV版"));
m_pMvClassWnd->InsertType(_T("音乐电影"));
m_pMvClassWnd->InsertType(_T("演唱会"));
m_pMvClassWnd->InsertType(_T("颁奖礼"));
m_pMvClassWnd->InsertType(_T("动漫"));
m_pMvClassWnd->InsertType(_T("翻制版"));
m_pMvClassWnd->InsertType(_T("预告版"));
m_pMvClassWnd->InsertType(_T("花絮版"));
m_pMvClassWnd->InsertType(_T("游戏"));
m_pMvClassWnd->InsertType(_T("广告"));
m_pMvClassWnd->InsertType(_T("Flash动画"));
m_pMvClassWnd->InsertType(_T("创意"));
m_pMvClassWnd->InsertType(_T("搞笑"));
m_pMvClassWnd->InsertType(_T("制服"));
m_pMvClassWnd->InsertType(_T("一镜到底"));
m_pMvClassWnd->InsertType(_T("迷幻"));
m_pMvClassWnd->InsertType(_T("重口味"));
m_pMvClassWnd->InsertType(_T("鬼畜"));
m_pMvClassWnd->InsertType(_T("穿越"));
m_pMvClassWnd->InsertType(_T("剧情"));
m_pMvClassWnd->InsertType(_T("清新"));
m_pMvClassWnd->InsertType(_T("民族风"));
m_pMvClassWnd->InsertType(_T("弹奏"));
m_pMvClassWnd->InsertType(_T("景色"));
m_pMvClassWnd->InsertType(_T("杀马特"));
m_pMvClassWnd->InsertType(_T("戏曲"));
m_pMvClassWnd->InsertType(_T("儿歌"));
m_pMvClassWnd->InsertYear(_T("全部"));
m_pMvClassWnd->InsertYear(_T("2017"));
m_pMvClassWnd->InsertYear(_T("2016"));
m_pMvClassWnd->InsertYear(_T("2015"));
m_pMvClassWnd->InsertYear(_T("2014"));
m_pMvClassWnd->InsertYear(_T("2013"));
m_pMvClassWnd->InsertYear(_T("2012"));
m_pMvClassWnd->InsertYear(_T("2011"));
m_pMvClassWnd->InsertYear(_T("2010"));
m_pMvClassWnd->InsertYear(_T("00年代"));
m_pMvClassWnd->InsertYear(_T("其他"));
m_pMvClassWnd->InsertItem(_T("薛之谦"), fileName);
m_pMvClassWnd->InsertItem(_T("手中沙"), fileName);
m_pMvClassWnd->InsertItem(_T("薛之谦"), fileName);
m_pMvClassWnd->InsertItem(_T("手中沙"), fileName);
m_pMvClassWnd->InsertItem(_T("薛之谦"), fileName);
m_pMvClassWnd->InsertItem(_T("手中沙"), fileName);
m_pMvClassWnd->InsertItem(_T("薛之谦"), fileName);
m_pMvClassWnd->InsertItem(_T("手中沙"), fileName);
m_pMvClassWnd->InsertItem(_T("薛之谦"), fileName);
m_pMvClassWnd->InsertItem(_T("手中沙"), fileName);
m_pMvClassWnd->InsertItem(_T("薛之谦"), fileName);
m_pMvClassWnd->InsertItem(_T("手中沙"), fileName);
m_pMvClassWnd->InsertItem(_T("薛之谦"), fileName);
m_pMvClassWnd->InsertItem(_T("手中沙"), fileName);
m_pLoveSongWnd = new CLoveSongListWnd();
m_pLoveSongWnd->Create(WS_CHILD, CRect(rect.left 201, rect.top 30, rect.right, rect.bottom - 80), this, IDC_LOVESONG_WND);
m_pLoveSongWnd->InsertColumn(_T("歌曲"), DT_LEFT, 250);
m_pLoveSongWnd->InsertColumn(_T("歌手"), DT_LEFT, 120);
m_pLoveSongWnd->InsertColumn(_T("专辑"), DT_LEFT, 120);
m_pLoveSongWnd->RecalHeaderWidth();
m_pLocalSongWnd = new CLocalSongWnd();
m_pLocalSongWnd->Create(WS_CHILD, CRect(rect.left 201, rect.top 30, rect.right, rect.bottom - 80), this, IDC_LOCALSONG_WND);
m_pLocalSongWnd->InsertColumn(_T("歌曲"), DT_LEFT, 250);
m_pLocalSongWnd->InsertColumn(_T("歌手"), DT_LEFT, 120);
m_pLocalSongWnd->InsertColumn(_T("专辑"), DT_LEFT, 120);
m_pLocalSongWnd->RecalHeaderWidth();
m_pPlayHistoryWnd = new CPlayHistoryListWnd();
m_pPlayHistoryWnd->Create(WS_CHILD, CRect(rect.left 201, rect.top 30, rect.right, rect.bottom - 80), this, IDC_PALYHISTORY_WND);
m_pPlayHistoryWnd->InsertColumn(_T("歌曲"), DT_LEFT, 200);
m_pPlayHistoryWnd->InsertColumn(_T("歌手"), DT_LEFT, 100);
m_pPlayHistoryWnd->InsertColumn(_T("专辑"), DT_LEFT, 100);
m_pPlayHistoryWnd->RecalHeaderWidth();
TCHAR szItem[100];
for (int i = 0; i < 50; i )
{
wsprintf(szItem, _T("%s %d"), _T("D:\\KwDownload\\song\\陈冠蒲 - 太多.mp3"), i 1);
m_pLocalSongWnd->InsertItem(szItem);
}
for (int i = 0; i < 50; i )
{
wsprintf(szItem, _T("%s %d"), _T("D:\\KwDownload\\song\\陈冠蒲 - 太多.mp3"), i 1);
m_pLoveSongWnd->InsertItem(szItem);
}
for (int i = 0; i < 50; i )
{
wsprintf(szItem, _T("%s %d"), _T("D:\\KwDownload\\song\\陈冠蒲 - 太多.mp3"), i 1);
m_pPlayHistoryWnd->InsertItem(szItem);
}
m_pCurWnd = m_pLocalSongWnd;
// m_pTryMenu.Create(WS_POPUP,CRect(0,0,0,0));
// m_pTryMenu.InitMenu(30, 200);
// m_pTryMenu.InsertMenuItem(ID_MENU_SONG_CONTROL, 0, 0, _T(""));
// m_pTryMenu.InsertMenuItem(0, 0, MENU_FLAG_SEPTOR, _T(""));
// m_pTryMenu.InsertMenuItem(ID_MENU_VOLUME_CONTROL, 0, 0, _T(""));
// m_pTryMenu.InsertMenuItem(ID_MENU_SHOW_LRC, 0, MENU_FLAG_ITEM, _T("显示歌词"));
// m_pTryMenu.InsertMenuItem(0, 0, MENU_FLAG_SEPTOR, _T(""));
// m_pTryMenu.InsertMenuItem(ID_MENU_SET, 0, MENU_FLAG_ITEM, _T("设置"));
// m_pTryMenu.InsertMenuItem(ID_MENU_EXIT_LOGIN, 0, MENU_FLAG_ITEM, _T("退出登录"));
// m_pTryMenu.InsertMenuItem(ID_MENU_EXIT, 0, MENU_FLAG_ITEM, _T("退出QQ音乐"));
m_ReadLrcWnd = new CReadLrcWnd();
m_ReadLrcWnd->Create(WS_CHILD|WS_VISIBLE, CRect(0, 0, 0, 0), this, IDC_READLRC_WND);
m_pSystemTray = new SystemTray();
m_pSystemTray->Create(this, 1, WM_MSG_TRAY);
m_pSystemTray->SetIcon(m_hSystemIcon);
return TRUE;
}
void CQQMusicDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialogEx::OnSysCommand(nID, lParam);
}
}
void CQQMusicDlg::OnSize(UINT nType, int cx, int cy)
{
CWnd::OnSize(nType,cx,cy);
CRect rect;
GetClientRect(rect);
if (m_ReadLrcWnd && m_ReadLrcWnd->GetSafeHwnd())
{
m_ReadLrcWnd->MoveWindow(201, 30, rect.Width() - 200, rect.bottom - 130, TRUE);
}
if (m_pTabManagerWnd && m_pTabManagerWnd->GetSafeHwnd())
{
m_pTabManagerWnd->MoveWindow(0, 100, 200, rect.bottom - 180);
}
if (m_pProgressBar && m_pProgressBar->GetSafeHwnd())
{
m_pProgressBar->MoveWindow(300, rect.Height() - 40, 400, 10, TRUE);
}
if (m_pLoveSongWnd && m_pLoveSongWnd->GetSafeHwnd())
{
m_pLoveSongWnd->MoveWindow(201, 30, rect.Width() - 200, rect.bottom - 110, TRUE);
}
if (m_pMusicHallWnd && m_pMusicHallWnd->GetSafeHwnd())
{
m_pMusicHallWnd->MoveWindow(201, 30, rect.Width() - 200, rect.bottom - 110, TRUE);
}
if (m_pMvClassWnd && m_pMvClassWnd->GetSafeHwnd())
{
m_pMvClassWnd->MoveWindow(201, 30, rect.Width() - 200, rect.bottom - 110, TRUE);
}
if (m_pLocalSongWnd && m_pLocalSongWnd->GetSafeHwnd())
{
m_pLocalSongWnd->MoveWindow(201, 30, rect.Width() - 200, rect.bottom - 110, TRUE);
}
if (m_pPlayHistoryWnd && m_pPlayHistoryWnd->GetSafeHwnd())
{
m_pPlayHistoryWnd->MoveWindow(201, 30, rect.Width() - 200, rect.bottom - 110, TRUE);
}
if(GetDlgItem(IDC_BUTTON_ABOVE)->GetSafeHwnd())
GetDlgItem(IDC_BUTTON_ABOVE)->MoveWindow(10, rect.bottom - 60, 80, 50);
if(GetDlgItem(IDC_BUTTON_CONTROL_MUSIC)->GetSafeHwnd())
GetDlgItem(IDC_BUTTON_CONTROL_MUSIC)->MoveWindow(100, rect.bottom - 60, 80, 50);
if(GetDlgItem(IDC_BUTTON_NEXT)->GetSafeHwnd())
GetDlgItem(IDC_BUTTON_NEXT)->MoveWindow(190, rect.bottom - 60, 80, 50);
if(GetSafeHwnd())
Invalidate(FALSE);
}
void CQQMusicDlg::OnDestroy()
{
if (m_pProgressBar && m_pProgressBar->GetSafeHwnd())
{
m_pProgressBar->DestroyWindow();
delete m_pProgressBar;
m_pProgressBar = NULL;
}
if (m_pTabManagerWnd && m_pTabManagerWnd->GetSafeHwnd())
{
m_pTabManagerWnd->DestroyWindow();
delete m_pTabManagerWnd;
m_pTabManagerWnd = NULL;
}
if (m_pLoveSongWnd &&m_pLoveSongWnd->GetSafeHwnd())
{
m_pLoveSongWnd->DestroyWindow();
delete m_pLoveSongWnd;
m_pLoveSongWnd = NULL;
}
if (m_pMusicHallWnd && m_pMusicHallWnd->GetSafeHwnd())
{
m_pMusicHallWnd->DestroyWindow();
delete m_pMusicHallWnd;
m_pMusicHallWnd = NULL;
}
if (m_pMvClassWnd && m_pMvClassWnd->GetSafeHwnd())
{
m_pMvClassWnd->DestroyWindow();
delete m_pMvClassWnd;
m_pMvClassWnd = NULL;
}
if (m_pLocalSongWnd && m_pLocalSongWnd->GetSafeHwnd())
{
m_pLocalSongWnd->DestroyWindow();
delete m_pLocalSongWnd;
m_pLocalSongWnd = NULL;
}
// if (m_pTryMenu.GetSafeHwnd())
//{
// m_pTryMenu.DestroyWindow();
// }
if (m_hSystemIcon)
{
DestroyIcon(m_hSystemIcon);
}
if (m_pSystemTray)
{
m_pSystemTray->Destroy();
delete m_pSystemTray;
m_pSystemTray = NULL;
}
if (m_pPlayHistoryWnd && m_pPlayHistoryWnd->GetSafeHwnd())
{
m_pPlayHistoryWnd->DestroyWindow();
delete m_pPlayHistoryWnd;
m_pPlayHistoryWnd = NULL;
}
if (m_ReadLrcWnd && m_ReadLrcWnd->GetSafeHwnd())
{
m_ReadLrcWnd->DestroyWindow();
delete m_ReadLrcWnd;
m_ReadLrcWnd = NULL;
}
CWnd::OnDestroy();
}
void CQQMusicDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this);
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
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;
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CPaintDC dc(this);
CDC memDC;
memDC.CreateCompatibleDC(&dc);
CRect rect;
GetClientRect(&rect);
CBitmap BitMap;
BitMap.CreateCompatibleBitmap(&dc, rect.Width(), rect.Height());
CBitmap *pOldBitMap = memDC.SelectObject(&BitMap);
memDC.FillSolidRect(rect,RGB(255, 255, 255));
CRect TopRect(rect);
TopRect.bottom = rect.top 30;
memDC.FillSolidRect(TopRect, RGB(0, 65, 66));
CRect bottomRect(rect);
bottomRect.top = rect.bottom - 80;
memDC.FillSolidRect(bottomRect, RGB(26, 82, 85));
CPen pen(PS_SOLID, 1, RGB(222, 222, 222));
CPen *pOldPen = memDC.SelectObject(&pen);
memDC.MoveTo(rect.left 200, rect.top 30);
memDC.LineTo(rect.left 200, rect.bottom - 80);
dc.BitBlt(0, 0, rect.Width(), rect.Height(), &memDC, 0, 0, SRCCOPY);
memDC.SelectObject(pOldPen);
memDC.SelectObject(pOldBitMap);
BitMap.DeleteObject();
}
}
HCURSOR CQQMusicDlg::OnQueryDragIcon()
{
return static_cast<HCURSOR>(m_hIcon);
}
标签: 界面编程代码
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明


网友评论
我要评论