gps/GPSResources/tcpmp/MediaPlayer/MediaPlayerDlg.cpp

555 lines
13 KiB
C++
Raw Normal View History

2019-05-01 12:32:35 +00:00
// MediaPlayerDlg.cpp : ʵ<><CAB5><EFBFBD>ļ<EFBFBD>
//
#include "stdafx.h"
#include "MediaPlayer.h"
#include "MediaPlayerDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// CMediaPlayerDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
CMediaPlayerDlg::CMediaPlayerDlg(CWnd* pParent /*=NULL*/)
: CDialog(CMediaPlayerDlg::IDD, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
// <20><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˢ
CBitmap tmpBmp;
// <20><><EFBFBD><EFBFBD>Դ<EFBFBD>м<EFBFBD><D0BC>ر<EFBFBD><D8B1><EFBFBD>ͼƬ
tmpBmp.LoadBitmap(IDB_MEDIA_WND);
m_BgDC.CreateCompatibleDC(NULL);
m_BgDC.SelectObject(&tmpBmp);
tmpBmp.DeleteObject();
m_txtTimeFont.CreateFont(10,0,0,0,FW_NORMAL,0,0,0,GB2312_CHARSET,OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,DEFAULT_PITCH|FF_SWISS,_T("Arial"));
m_blackBrush.CreateSolidBrush(RGB(0,0,0));
m_InitDC = false;
m_Volume = 0;
m_RefreshWnd = false;
if(m_TcpPlayer.Init("0.01",1,TRUE))
{
m_Volume = m_TcpPlayer.GetVolume();
m_Volume /= 10;
if (m_Volume < 2)
{
m_Volume = 2;
}
if (m_Volume > 9)
{
m_Volume = 9;
}
m_Volume -= 2;
m_CurrentTime = TEXT("00:00:00");
m_CurrentFile = TEXT("");
m_CurentDuration = TEXT("/00:00:00");
m_TcpPlayer.SetNotifyCallBack((LPVOID)this,(LONG)PlayerNotifyProc);
}
}
CMediaPlayerDlg::~CMediaPlayerDlg()
{
m_txtTimeFont.DeleteObject();
m_blackBrush.DeleteObject();
m_BgDC.DeleteDC();
}
void CMediaPlayerDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_BUTTON_CLOSE, m_butClose);
DDX_Control(pDX, IDC_BUTTON_PLAY, m_butPlay);
DDX_Control(pDX, IDC_BUTTON_STOP, m_butStop);
DDX_Control(pDX, IDC_BUTTON_PRE, m_butPre);
DDX_Control(pDX, IDC_BUTTON_NEXT, m_butNext);
DDX_Control(pDX, IDC_BUTTON_ADDVOL, m_butAdd);
DDX_Control(pDX, IDC_BUTTON_DECVOL, m_butVolDec);
DDX_Control(pDX, IDC_BUTTON_VOLUME, m_butSound);
DDX_Control(pDX, IDC_BUTTON_FULL, m_butFull);
DDX_Control(pDX, IDC_PROGRESS_PRG, m_prgVol);
}
BEGIN_MESSAGE_MAP(CMediaPlayerDlg, CDialog)
#if defined(_DEVICE_RESOLUTION_AWARE) && !defined(WIN32_PLATFORM_WFSP)
ON_WM_SIZE()
#endif
//}}AFX_MSG_MAP
ON_WM_PAINT()
ON_WM_ERASEBKGND()
ON_BN_CLICKED(IDC_BUTTON_PLAY, &CMediaPlayerDlg::OnBnClickedButtonPlay)
ON_BN_CLICKED(IDC_BUTTON_STOP, &CMediaPlayerDlg::OnBnClickedButtonStop)
ON_BN_CLICKED(IDC_BUTTON_PRE, &CMediaPlayerDlg::OnBnClickedButtonPre)
ON_BN_CLICKED(IDC_BUTTON_NEXT, &CMediaPlayerDlg::OnBnClickedButtonNext)
ON_BN_CLICKED(IDC_BUTTON_FULL, &CMediaPlayerDlg::OnBnClickedButtonFull)
ON_BN_CLICKED(IDC_BUTTON_VOLUME, &CMediaPlayerDlg::OnBnClickedButtonVolume)
ON_BN_CLICKED(IDC_BUTTON_ADDVOL, &CMediaPlayerDlg::OnBnClickedButtonAddvol)
ON_BN_CLICKED(IDC_BUTTON_DECVOL, &CMediaPlayerDlg::OnBnClickedButtonDecvol)
ON_BN_CLICKED(IDC_BUTTON_CLOSE, &CMediaPlayerDlg::OnBnClickedButtonClose)
ON_WM_LBUTTONDOWN()
// ON_STN_CLICKED(IDC_STATIC_VIDEO, &CMediaPlayerDlg::OnStnClickedStaticVideo)
// ON_WM_CTLCOLOR()
END_MESSAGE_MAP()
// CMediaPlayerDlg <20><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BOOL CMediaPlayerDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// <20><><EFBFBD>ô˶Ի<CBB6><D4BB><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><EFBFBD><EAA1A3>Ӧ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2>ǶԻ<C7B6><D4BB><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>Զ<EFBFBD>
// ִ<>д˲<D0B4><CBB2><EFBFBD>
SetIcon(m_hIcon, TRUE); // <20><><EFBFBD>ô<EFBFBD>ͼ<EFBFBD><CDBC>
SetIcon(m_hIcon, FALSE); // <20><><EFBFBD><EFBFBD>Сͼ<D0A1><CDBC>
#ifdef WIN32_PLATFORM_WFSP
if (!m_dlgCommandBar.Create(this) ||
!m_dlgCommandBar.InsertMenuBar(IDR_MAINFRAME))
{
TRACE0("δ<EFBFBD>ܴ<EFBFBD><EFBFBD><EFBFBD> CommandBar\n");
return FALSE; // δ<>ܴ<EFBFBD><DCB4><EFBFBD>
}
#endif // WIN32_PLATFORM_WFSP
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
MoveWindow(0,0,320,240);
CenterWindow(GetDesktopWindow());
m_butClose.MoveWindow(245,205,35,35);
m_butClose.LoadBitmaps(IDB_MEDIA_CLOSE,IDB_MEDIA_CLOSED);
m_butFull.MoveWindow(200,205,35,35);
m_butFull.LoadBitmaps(IDB_MEDIA_FULL,IDB_MEDIA_FULLD);
m_butPlay.MoveWindow(0,185,55,55);
m_butPlay.LoadBitmaps(IDB_MEDIA_PLAY,IDB_MEDIA_PAUSE);
m_butStop.MoveWindow(64,205,35,35);
m_butStop.LoadBitmaps(IDB_MEDIA_STOP,IDB_MEDIA_STOPD);
m_butPre.MoveWindow(110,205,35,35);
m_butPre.LoadBitmaps(IDB_MEDIA_PRE,IDB_MEDIA_PRED);
m_butNext.MoveWindow(155,205,35,35);
m_butNext.LoadBitmaps(IDB_MEDIA_NEXT,IDB_MEDIA_NEXTD);
m_butVolDec.MoveWindow(303,188,16,17);
m_butVolDec.LoadBitmaps(IDB_MEDIA_VOLDEC,IDB_MEDIA_VOLDECD);
m_butAdd.MoveWindow(303,168,16,17);
m_butAdd.LoadBitmaps(IDB_MEDIA_ADDVOL,IDB_MEDIA_ADDVOLD);
m_butSound.MoveWindow(241,167,20,20);
m_butSound.LoadBitmaps(IDB_MEDIA_SOUND,IDB_MEDIA_MUTE);
POINT pt;
pt.x = 1;
pt.y = 1;
ClientToScreen(&pt);
rect rcDst;
rcDst.x = pt.x;
rcDst.y = pt.y;
rcDst.Width = 318;
rcDst.Height = 163;
m_TcpPlayer.SetDisplayRect(&rcDst);
m_prgVol.MoveWindow(9,174,177,5);
m_prgVol.LoadBitmap(IDB_MEDIA_PRGEMPTY,IDB_MEDIA_PRGFULL);
m_prgVol.SetRange(0,100);
m_prgVol.SetPos(0);
m_Timer = timeSetEvent(1000,100,(LPTIMECALLBACK)PlayerTimeProc,(DWORD)this,TIME_PERIODIC);
return TRUE; // <20><><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>򷵻<EFBFBD> TRUE
}
#if defined(_DEVICE_RESOLUTION_AWARE) && !defined(WIN32_PLATFORM_WFSP)
void CMediaPlayerDlg::OnSize(UINT /*nType*/, int /*cx*/, int /*cy*/)
{
DRA::RelayoutDialog(
AfxGetInstanceHandle(),
this->m_hWnd,
DRA::GetDisplayMode() != DRA::Portrait ?
MAKEINTRESOURCE(IDD_MEDIAPLAYER_DIALOG_WIDE) :
MAKEINTRESOURCE(IDD_MEDIAPLAYER_DIALOG));
}
#endif
void PlayerNotifyProc(LPVOID pForm, int Id, int Value)
{
CMediaPlayerDlg* pMedia = (CMediaPlayerDlg*)pForm;
CString str;
str.Format(TEXT("ID:0x%2x,Value:%d\r\n"),Id,Value);
OutputDebugString(str);
BOOL IsPlayEnd = FALSE;
if (Id == PLAYER_EXIT_AT_END)
{
//Player->Set(Player,PLAYER_STOP,NULL,0);
pMedia->OnBnClickedButtonStop();
//OutputDebugString(TEXT("Play At the end.\n"));
}
else if (Id == PLAYER_TITLE && Value == 1)
{
pMedia->m_CurrentFile = pMedia->GetFileName(pMedia->m_TcpPlayer.GetListFileName(pMedia->m_TcpPlayer.GetCurFileIndex()));
IsPlayEnd = TRUE;
pMedia->Invalidate();
OutputDebugString(TEXT("Change Title\n"));
}
else if(Id == PLAYER_PLAY && Value == 1)
{
//OutputDebugString(TEXT("Change Duration\n"));
}
else if(Id == PLAYER_PERCENT && Value == 1)
{
int iTime = pMedia->m_TcpPlayer.GetDuration();
if (iTime < 0)
{
iTime = 0;
}
else
{
pMedia->m_prgVol.SetRange(0, iTime);
}
pMedia->m_CurentDuration.Format(TEXT("/%02d:%02d:%02d"),iTime / 3600, iTime / 60, iTime % 60);
IsPlayEnd = FALSE;
pMedia->Invalidate();
}
}
void CMediaPlayerDlg::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: <20>ڴ˴<DAB4><CBB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// <20><>Ϊ<EFBFBD><CEAA>ͼ<EFBFBD><CDBC>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD> CDialog::OnPaint()
if (!m_TcpPlayer.IsFullScreen())
{
m_MemDC.BitBlt(0,0,320,240,&m_BgDC,0,0,SRCCOPY);
tick_t time = m_TcpPlayer.GetPossion();
if (time < 0)
{
time = 0;
}
m_CurrentTime.Format(TEXT("%02d:%02d:%02d%s"),time / 3600, time / 60, time % 60, m_CurentDuration);
m_prgVol.SetPos(time);
m_MemDC.DrawText(m_CurrentTime,CRect(80,186,188,200),DT_RIGHT|DT_VCENTER);
DrawVolume(&m_MemDC);
if (m_TcpPlayer.IsPlaying() && !m_RefreshWnd)
{
dc.BitBlt(0,167,320 - 167,240,&m_MemDC,0,167,SRCCOPY);
}
else
{
if (m_RefreshWnd)
{
m_RefreshWnd = false;
}
dc.BitBlt(0,0,320,240,&m_MemDC,0,0,SRCCOPY);
}
}
}
BOOL CMediaPlayerDlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC>ֵ
if (!m_InitDC)
{
CBitmap tmpBmp;
tmpBmp.CreateCompatibleBitmap(pDC,320,240);
m_MemDC.CreateCompatibleDC(pDC);
m_MemDC.SelectObject(&tmpBmp);
m_MemDC.SelectObject(&m_txtTimeFont);
m_MemDC.SetBkMode(TRANSPARENT);
m_MemDC.SetTextColor(RGB(255,255,255));
tmpBmp.DeleteObject();
m_InitDC = true;
}
return FALSE;
//return CDialog::OnEraseBkgnd(pDC);
}
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void CMediaPlayerDlg::DrawVolume(CDC* pDC)
{
int startX = 262;
int startY = 179;
int iVolume = m_TcpPlayer.GetVolume();
if (iVolume == -1)
{
iVolume = 0;
}
iVolume /= 10;
if (iVolume < 2 )
{
iVolume = 2;
}
if (iVolume > 9)
{
iVolume = 9;
}
m_Volume = iVolume - 2;
for (UINT i = 0; i <= m_Volume; i++)
{
RECT rc;
rc.left = startX + 5 * i;
rc.top = startY - i;
rc.right = rc.left + 3;
rc.bottom = startY + 6;
pDC->FillSolidRect(&rc,RGB(255,255,255));
}
}
void CMediaPlayerDlg::OnBnClickedButtonPlay()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (!m_TcpPlayer.HasPlayFile())
{
// MessageBox(TEXT("û<><C3BB>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>"));
// return;
tchar_t* pFileName = (tchar_t*)((unsigned short*)TEXT("\\Storage Card\\mp4"));
tchar_t* pExtName = (tchar_t*)((unsigned short*)TEXT("*.*"));
//int i = m_TcpPlayer.AddFileFromDir(pFileName, pExtName, false, 0);
int i = m_TcpPlayer.SetCurrentPlayFile("\\Storage Card\\10.wmv");
if (i == -1)
{
MessageBox(TEXT("û<EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>"));
return;
}
}
if (!m_TcpPlayer.IsPlaying())
{
if(m_TcpPlayer.Play(true))
{
m_butPlay.LoadBitmaps(IDB_MEDIA_PAUSE,IDB_MEDIA_PLAY);
m_CurrentFile = GetFileName(m_TcpPlayer.GetListFileName(m_TcpPlayer.GetCurFileIndex()));
int iTime = m_TcpPlayer.GetDuration();
if (iTime < 0)
{
iTime = 0;
}
else
{
m_prgVol.SetRange(0, iTime);
}
m_CurentDuration.Format(TEXT("%02d:%02d"),iTime / 60, iTime % 60);
Invalidate();
}
}
else
{
if(m_TcpPlayer.Play(false))
m_butPlay.LoadBitmaps(IDB_MEDIA_PLAY,IDB_MEDIA_PAUSE);
}
m_butPlay.Invalidate();
}
void CMediaPlayerDlg::OnBnClickedButtonStop()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
m_TcpPlayer.Stop();
m_butPlay.LoadBitmaps(IDB_MEDIA_PLAY,IDB_MEDIA_PAUSE);
m_CurrentTime = TEXT("00:00:00");
m_CurentDuration = TEXT("00:00:00");
m_butPlay.Invalidate();
}
void CMediaPlayerDlg::OnBnClickedButtonPre()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
m_TcpPlayer.Prev();
}
void CMediaPlayerDlg::OnBnClickedButtonNext()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
m_TcpPlayer.Next();
}
void CMediaPlayerDlg::OnBnClickedButtonFull()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
m_TcpPlayer.SetFullScreen(true);
}
void CMediaPlayerDlg::OnBnClickedButtonVolume()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (m_TcpPlayer.GetMute())
{
m_butSound.LoadBitmaps(IDB_MEDIA_SOUND,IDB_MEDIA_MUTE);
m_TcpPlayer.SetMute(false);
}
else
{
m_butSound.LoadBitmaps(IDB_MEDIA_MUTE,IDB_MEDIA_SOUND);
m_TcpPlayer.SetMute(true);
}
m_butSound.Invalidate();
}
void CMediaPlayerDlg::OnBnClickedButtonAddvol()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (m_Volume < 7)
{
m_Volume++;
int iVolume = m_Volume + 2;
iVolume *= 10;
m_TcpPlayer.SetVolume(iVolume);
CRect rc(260,167,300,187);
InvalidateRect(&rc);
}
}
void CMediaPlayerDlg::OnBnClickedButtonDecvol()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (m_Volume > 0)
{
m_Volume--;
int iVolume = m_Volume + 2;
iVolume *= 10;
m_TcpPlayer.SetVolume(iVolume);
CRect rc(260,167,300,187);
InvalidateRect(&rc);
//Invalidate();
}
}
void CMediaPlayerDlg::OnBnClickedButtonClose()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
EndDialog(0);
}
void PlayerTimeProc(UINT uTimerID, UINT uMsg, DWORD_PTR dwUser, DWORD_PTR dw1, DWORD dw2)
{
CMediaPlayerDlg *pDlg = (CMediaPlayerDlg*)dwUser;
if (pDlg->m_TcpPlayer.IsFullScreen())
{
}
else
{
pDlg->InvalidateRect(CRect(80,186,188,200));
}
}
CString CMediaPlayerDlg::GetFileName(CString sPathName)
{
CString FileExt;
FileExt.Empty();
// <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int strLen = sPathName.GetLength() - 1;
for(int i = strLen; i >= 0; i--)
{
// <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>'.'
if(sPathName.GetAt(i) == '\\')
{
// <20><>ȡ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>չ<EFBFBD><D5B9>
FileExt = sPathName.Right(strLen - i);
break;
}
}
return FileExt;
}
void CMediaPlayerDlg::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC>ֵ
if (m_TcpPlayer.IsFullScreen())
{
m_TcpPlayer.SetFullScreen(false);
CDC* pDC = GetDC();
pDC->BitBlt(0,0,320,240,&m_MemDC,0,0,SRCCOPY);
RefreshControl();
}
else
{
if (point.x >= 9 && point.y >= 165 && point.y < 185 && point.x <= 184)
{
int iPos = ((point.x - 9) * (m_prgVol.m_Max - m_prgVol.m_Min)) / (184 - 9);
m_prgVol.SetPos(iPos);
m_TcpPlayer.SetPossion(iPos);
}
}
CDialog::OnLButtonDown(nFlags, point);
}
void CMediaPlayerDlg::RefreshControl(void)
{
m_butClose.Invalidate();
m_butFull.Invalidate();
m_butPlay.Invalidate();
m_butStop.Invalidate();
m_butPre.Invalidate();
m_butNext.Invalidate();
m_butVolDec.Invalidate();
m_butAdd.Invalidate();
m_butSound.Invalidate();
m_prgVol.Invalidate();
m_RefreshWnd = true;
Invalidate();
}