// Group2Dlg.cpp : implementation file//
#include "stdafx.h"#include "Group2.h"#include "Group2Dlg.h"
#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endif
/// CAboutDlg dialog used for App About
class CAboutDlg : public CDialog{public: CAboutDlg();
// Dialog Data //{{AFX_DATA(CAboutDlg) enum { IDD = IDD_ABOUTBOX }; //}}AFX_DATA
// ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CAboutDlg) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL
// Implementationprotected: //{{AFX_MSG(CAboutDlg) //}}AFX_MSG DECLARE_MESSAGE_MAP()};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD){ //{{AFX_DATA_INIT(CAboutDlg) //}}AFX_DATA_INIT}
void CAboutDlg::DoDataExchange(CDataExchange* pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CAboutDlg) //}}AFX_DATA_MAP}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog) //{{AFX_MSG_MAP(CAboutDlg) // No message handlers //}}AFX_MSG_MAPEND_MESSAGE_MAP()
/// CGroup2Dlg dialog
CGroup2Dlg::CGroup2Dlg(CWnd* pParent /*=NULL*/) : CDialog(CGroup2Dlg::IDD, pParent){ //{{AFX_DATA_INIT(CGroup2Dlg) // NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT // Note that LoadIcon does not require a subsequent DestroyIcon in Win32
fi=-1;fr=0;
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);}
void CGroup2Dlg::DoDataExchange(CDataExchange* pDX){ CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CGroup2Dlg) DDX_Control(pDX, IDC_SKIN, m_skin); DDX_Control(pDX, IDC_Listbox, m_list); DDX_Control(pDX, IDC_OCX1, m_playview); //}}AFX_DATA_MAP}
BEGIN_MESSAGE_MAP(CGroup2Dlg, CDialog) //{{AFX_MSG_MAP(CGroup2Dlg) ON_WM_SYSCOMMAND() ON_WM_PAINT() ON_WM_QUERYDRAGICON() ON_LBN_DBLCLK(IDC_Listbox, OnDblclkListbox) ON_BN_CLICKED(IDC_Add, OnAdd) ON_BN_CLICKED(IDOK2, OnDel) ON_BN_CLICKED(IDC_pop, Onpop) ON_CBN_SELCHANGE(IDC_SKIN, OnSelchangeSkin) //}}AFX_MSG_MAPEND_MESSAGE_MAP()
/// CGroup2Dlg message handlers
BOOL CGroup2Dlg::OnInitDialog(){ CDialog::OnInitDialog();
// Add "About..." menu item to system menu.
// IDM_ABOUTBOX must be in the system command range. ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE); if (pSysMenu != NULL) { CString strAboutMenu; strAboutMenu.LoadString(IDS_ABOUTBOX); if (!strAboutMenu.IsEmpty()) { pSysMenu->AppendMenu(MF_SEPARATOR); pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu); } }
// Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon m_flag=true;m_flag1=true,m_flag2=false;m_flag3=true;m_flag4=true;
MoveWindow(200,200,735,450); // TODO: Add extra initialization here
m_skin.AddString("皮肤1");// m_skin.SetTopIndex = 0; m_skin.AddString("皮肤2"); m_skin.AddString("皮肤3"); m_skin.AddString("皮肤4"); m_skin.AddString("皮肤5");
CComboBox *pBox = (CComboBox *)GetDlgItem( IDC_SKIN ) ; pBox->SetCurSel( 0 ) ; //设置为第零个元素 return TRUE; // return TRUE unless you set the focus to a control}
void CGroup2Dlg::OnSysCommand(UINT nID, LPARAM lParam){ if ((nID & 0xFFF0) == IDM_ABOUTBOX) { CAboutDlg dlgAbout; dlgAbout.DoModal(); } else { CDialog::OnSysCommand(nID, lParam); }}
// If you add a minimize button to your dialog, you will need the code below// to draw the icon. For MFC applications using the document/view model,// this is automatically done for you by the framework.
void CGroup2Dlg::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(); }}
// The system calls this to obtain the cursor to display while the user drags// the minimized window.HCURSOR CGroup2Dlg::OnQueryDragIcon(){ return (HCURSOR) m_hIcon;}
void CGroup2Dlg::forfor(){ int i=0; for(i;i<=fi;i++) { file1[i]=file[i]; }}
void CGroup2Dlg::forfor1(){ int i=0; for(i;i<=fi;i++) { file[i]=file1[i]; }}
void CGroup2Dlg::OnOK() {
/*
CFileDialog dlg(TRUE,NULL,NULL,0,"所有文件|*.*",NULL); if(dlg.DoModal()==IDOK) { //m_playview.SetFileName(dlg.GetPathName());
m_playview.SetUrl(dlg.GetPathName()); } */
CFileDialog f(TRUE,NULL,NULL,0,"所有文件|*.*",NULL); f.m_ofn.Flags |=512;//OFN_ALLOWMULTISELECT; f.m_ofn.lpstrFilter="All Support type/0*.*/0/0"; //选取内容部份 POSITION pos=f.GetStartPosition(); if(f.DoModal()==IDOK) { while (pos != NULL) { fi++; file[fi]=f.GetNextPathName(pos);// file2[fi]=ExtractFileName(file[fi]);
// ExtractFileName if(aa=="") { aa=file[fi]; fr=fi;// Onstop();// Tplay(); // m_play.LoadBitmaps(IDB_BITMAPPAUSE,IDB_BITMAPPLAY3); m_flag=false; // m_play.RedrawWindow(); }
m_playview.SetUrl(file[fi]);
m_list.AddString(file[fi]); m_list.SetCurSel(fi); UpdateData(false); } forfor(); }
// TODO: Add extra validation here // CDialog::OnOK();}
void CGroup2Dlg::On_newplaylist() {
// TODO: Add your control notification handler code here CFileDialog dlg(TRUE,NULL,NULL,0,"所有文件|*.*",NULL); if(dlg.DoModal()==IDOK) { //m_playview.SetFileName(dlg.GetPathName());
// m_playview.SetUrl(dlg.GetPathName()); }
CString Url=dlg.GetPathName();// m_playview.newPlaylist("new",Url);
}
void CGroup2Dlg::OnDblclkListbox() { // TODO: Add your control notification handler code here
int i=m_list.GetCurSel(); CString tp; tp.Format("%d",i); fr=i; aa=file[i];// Onstop();// OnPlay();
m_playview.SetUrl(aa); UpdateData(false);
}
void CGroup2Dlg::OnAdd() {
CDialog::OnOK(); }
void CGroup2Dlg::OnDel() { // TODO: Add your control notification handler code here int temp=0,i=0,j=0; temp=m_list.GetCurSel(); for(i;i<=fi;i++) { if(i==temp) { j=i; for(j;j<fi;j++) { file1[j]=file1[j+1]; } fi=fi-1; m_list.DeleteString(temp); m_list.SetCurSel(temp-1); UpdateData(false); forfor1(); } } }
void CGroup2Dlg::Onpop() { // TODO: Add your control notification handler code here
if(!m_flag4) { for(int i=510;i<=735;i++) { Sleep(1); MoveWindow(200,200,i,450); } m_flag4=true; }else { for(int i=735;i>=510;i--) { Sleep(1); MoveWindow(200,200,i,450); } m_flag4=false; } }
void CGroup2Dlg::OnSelchangeSkin() { // TODO: Add your control notification handler code here
// int x;
switch(m_skin.GetCurSel()) { case 0: { VERIFY( 1 == InitSkinMagicLib(AfxGetInstanceHandle(), NULL, NULL, NULL)); if(0==LoadSkinFile("corona.smf")) { m_blnSkinLoaded=FALSE; AfxMessageBox("请在播放音乐之前设置好皮肤!!"); } else m_blnSkinLoaded=TRUE; if(m_blnSkinLoaded) { //VERIFY( 1 == SetWindowSkin( m_pMainWnd->m_hWnd , "MainFrame" )); //对话框类型的工程不要加这句话。 VERIFY( 1 == SetDialogSkin( "Dialog" ) ); } m_skin.SetCurSel(0);
}break; case 1: {
VERIFY( 1 == InitSkinMagicLib(AfxGetInstanceHandle(), NULL, NULL, NULL)); if(0==LoadSkinFile("x-plus.smf")) { m_blnSkinLoaded=FALSE; AfxMessageBox("请在播放音乐之前设置好皮肤!!"); } else m_blnSkinLoaded=TRUE; if(m_blnSkinLoaded) { //VERIFY( 1 == SetWindowSkin( m_pMainWnd->m_hWnd , "MainFrame" )); //对话框类型的工程不要加这句话。 VERIFY( 1 == SetDialogSkin( "Dialog" ) ); }
m_skin.SetCurSel(1); }break;
case 2: {
VERIFY( 1 == InitSkinMagicLib(AfxGetInstanceHandle(), NULL, NULL, NULL)); if(0==LoadSkinFile("BlueHorn.smf")) { m_blnSkinLoaded=FALSE; AfxMessageBox("请在播放音乐之前设置好皮肤!!"); } else m_blnSkinLoaded=TRUE; if(m_blnSkinLoaded) { //VERIFY( 1 == SetWindowSkin( m_pMainWnd->m_hWnd , "MainFrame" )); //对话框类型的工程不要加这句话。 VERIFY( 1 == SetDialogSkin( "Dialog" ) ); } m_skin.SetCurSel(2);
}break; case 3: {
VERIFY( 1 == InitSkinMagicLib(AfxGetInstanceHandle(), NULL, NULL, NULL)); if(0==LoadSkinFile("xpsteel.smf")) { m_blnSkinLoaded=FALSE; AfxMessageBox("请在播放音乐之前设置好皮肤!!"); } else m_blnSkinLoaded=TRUE; if(m_blnSkinLoaded) { //VERIFY( 1 == SetWindowSkin( m_pMainWnd->m_hWnd , "MainFrame" )); //对话框类型的工程不要加这句话。 VERIFY( 1 == SetDialogSkin( "Dialog" ) ); } m_skin.SetCurSel(3); }break; case 4: {
VERIFY( 1 == InitSkinMagicLib(AfxGetInstanceHandle(), NULL, NULL, NULL)); if(0==LoadSkinFile("xpblue.smf")) { m_blnSkinLoaded=FALSE; AfxMessageBox("请在播放音乐之前设置好皮肤!!"); } else m_blnSkinLoaded=TRUE; if(m_blnSkinLoaded) { //VERIFY( 1 == SetWindowSkin( m_pMainWnd->m_hWnd , "MainFrame" )); //对话框类型的工程不要加这句话。 VERIFY( 1 == SetDialogSkin( "Dialog" ) ); }
m_skin.SetCurSel(4);
}
}
}