?? opendlg1.cpp
字號:
// OpenDlg1.cpp : implementation file
//
#include "stdafx.h"
#include "Alarm.h"
#include "OpenDlg1.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// COpenDlg1 dialog
COpenDlg1::COpenDlg1(CWnd* pParent /*=NULL*/)
: CDialog(COpenDlg1::IDD, pParent)
{
//{{AFX_DATA_INIT(COpenDlg1)
//}}AFX_DATA_INIT
}
void COpenDlg1::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(COpenDlg1)
DDX_Control(pDX, IDC_LISTUP, m_ListUp);
DDX_Control(pDX, IDC_LISTDOWN, m_ListDown);
DDX_Control(pDX, IDOK, m_OK);
DDX_Control(pDX, IDCANCEL, m_Cancel);
DDX_Control(pDX, IDC_LIST, m_List);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(COpenDlg1, CDialog)
//{{AFX_MSG_MAP(COpenDlg1)
ON_WM_CTLCOLOR()
ON_WM_ERASEBKGND()
ON_BN_CLICKED(IDC_LISTUP, OnListup)
ON_BN_CLICKED(IDC_LISTDOWN, OnListdown)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// COpenDlg1 message handlers
BOOL COpenDlg1::OnInitDialog()
{
CDialog::OnInitDialog();
::SetWindowPos(this->GetSafeHwnd(),
HWND_TOPMOST,
10,
120,
180,
100,
SWP_SHOWWINDOW);
m_BackScreenBitmap.LoadBitmap(IDB_OPENBKG);
m_List .MoveWindow(1,1,158,100);
m_ListUp .MoveWindow(160,20,18,18);
m_ListDown.MoveWindow(160,40,18,18);
m_Cancel .MoveWindow(160,60,18,18);
m_OK .MoveWindow(160,80,18,18);
m_ListUp .LoadBitmaps(IDB_OPEN_LISTUP_W,IDB_OPEN_LISTUP_B);
m_ListDown.LoadBitmaps(IDB_OPEN_LISTDOWN_W,IDB_OPEN_LISTDOWN_B);
m_Cancel .LoadBitmaps(IDB_OPEN_CLOSE_W,IDB_OPEN_CLOSE_B);
m_OK .LoadBitmaps(IDB_OPEN_OK_W,IDB_OPEN_OK_B);
WIN32_FIND_DATA FileData;
HANDLE hSearch;
bool bFinished = false;
hSearch = FindFirstFile( L"\\sdmmc\\alarm\\*.mp3",&FileData);
if (hSearch == INVALID_HANDLE_VALUE)
{
return false;
}
while (!bFinished)
{
m_List.AddString(FileData.cFileName);
if (!FindNextFile(hSearch ,&FileData))
{
bFinished = true;
}
}
FindClose(hSearch);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void COpenDlg1::OnOK()
{
if (m_List.GetCurSel() > 0)
{
m_List.GetText(m_List.GetCurSel(),strName);
}
else
strName = "SysMusic";
CDialog::OnOK();
}
HBRUSH COpenDlg1::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if(nCtlColor == CTLCOLOR_LISTBOX)
{
// pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(255,255,255));
pDC->SetBkColor(RGB(0,0,0));
m_brMine = ::CreateSolidBrush(RGB(0,0,0));
return m_brMine;
}
// TODO: Return a different brush if the default is not desired
return hbr;
}
BOOL COpenDlg1::OnEraseBkgnd(CDC* pDC)
{
BITMAP bmpInfo;
m_BackScreenBitmap.GetBitmap(&bmpInfo);
CDC dcMemory;
dcMemory.CreateCompatibleDC(pDC);
CBitmap* pOldBitmap = dcMemory.SelectObject(&m_BackScreenBitmap);
CRect rect;
GetClientRect(&rect);
pDC->BitBlt(0, 0, bmpInfo.bmWidth, bmpInfo.bmHeight, &dcMemory,
0, 0, SRCCOPY);
dcMemory.SelectObject(pOldBitmap);
return true;
}
void COpenDlg1::OnListup()
{
int i = m_List.GetCurSel();// 得到當前點擊的是第幾個。
if(i < 7)
i = 0;
else
i = i - 7;
m_List.SetCurSel(i);
m_List.SetTopIndex(i);
}
void COpenDlg1::OnListdown()
{
int i = m_List.GetCurSel();// 得到當前點擊的是第幾個。
i = i + 7;
if(i > m_List.GetCount()-1)
i = m_List.GetCount()-7;
m_List.SetCurSel(i);
m_List.SetTopIndex(i);
}
void COpenDlg1::OnCancel()
{
strName ="SysMusic";
CDialog::OnCancel();
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -