lightDlg.h
定义成员变量:
CBitmap m_image[2];
int m_iBitmap;
CDC m_dc;
BOOL m_bStart;
属性栏 添加消息:WM_TIMER
lightDlg.cpp
构造函数:
ClightDlg::ClightDlg(CWnd* pParent /*=NULL*/)
: CDialog(ClightDlg::IDD, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
m_image[0].LoadBitmap(IDB_BITMAP1);
m_image[1].LoadBitmap(IDB_BITMAP2);
m_iBitmap = 0;
m_dc.CreateCompatibleDC(NULL);
m_bStart = FALSE;
}
void ClightDlg::OnPaint()
{
if (IsIconic())
{
..........................
}
else
{
CDialog::OnPaint();
HGDIOBJ hOld = m_dc.SelectObject(&m_image[m_iBitmap]);
CDC* pDC = GetDC();
pDC->BitBlt(10, 10, 100, 100, &m_dc, 0, 0, SRCCOPY);
ReleaseDC(pDC);
m_dc.SelectObject(hOld);
}
}
void ClightDlg::OnTimer(UINT_PTR nIDEvent)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
if (nIDEvent == 1)
{
m_iBitmap = !m_iBitmap;
Invalidate(FALSE);
return;
}
CDialog::OnTimer(nIDEvent);
}
void ClightDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
if (m_bStart)
{
KillTimer(1);
}
else
{
SetTimer(1, 500, NULL);
}
m_bStart = !m_bStart;
}