aintDC dc(this);
CString str, strF;
CRect rc;
m_ImageList.Create(354, 275, ILC_COLOR24|ILC_MASK, 0, 10);
::GetCurrentDirectory(256, str.GetBuffer(256));
for(int i=9; i>0; i--){
strF.Format(_T("%s\\帮助-%i.bmp"), str, i);
Image2(&;dc, &;m_ImageList, 354, 275, strF);
}
GetWindowRect(&;rc);
SetWindowPos(NULL, m_pt.x-76, m_pt.y-138, 358, 275, SWP_NOZORDER);
ZycGlob_SetLayeredWindow(m_hWnd, 0, 0, LWA_ALPHA);
SetTimer(1, 100, NULL);
return TRUE;
}
void CHelpPlayer::OnTimer(UINT_PTR nIDEvent)
{
if(nIDEvent==1){
m_iAlpha+=10;
if(m_iAlpha>255){
KillTimer(1);
m_iAlpha=255;
SetTimer(2, 3000, NULL);
}
ZycGlob_SetLayeredWindow(m_hWnd, 0, m_iAlpha, LWA_ALPHA);
}else if(nIDEvent==2){
KillTimer(2);
SetTimer(3, 50, NULL);
}else if(nIDEvent==3){
m_iAlpha-=10;
if(m_iAlpha<0){
KillTimer(3);
m_iAlpha=0;
m_cIndex++;
if(m_cIndex==9){
CDialog::OnCancel();
}else{
Invalidate(FALSE);
SetTimer(1, 100, NULL);
}
}
ZycGlob_SetLayeredWindow(m_hWnd, 0, m_iAlpha, LWA_ALPHA);
}
}
HBRUSH CHelpPlayer::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
return hbr;
}
void CHelpPlayer::OnPaint()
{
CPaintDC dc(this);
CBitmap *pBmp, Bmp;
CRect rc;
CDC dcMem;
GetClientRect(rc);
dcMem.CreateCompatibleDC(NULL);
Bmp.CreateCompatibleBitmap(&;dc, rc.Width(), rc.Height());
pBmp=dcMem.SelectObject(&;Bmp);
m_ImageList.Draw(&;dcMem, m_cIndex, CPoint(0,0), ILD_NORMAL);
dc.BitBlt(0, 0, rc.Width(), rc.Height(), &;dcMem, 0, 0, SRCCOPY);
dcMem.SelectObject(pBmp);
Bmp.DeleteObject();
dcMem.DeleteDC();
}