如果用户要一直显示图片
用户将代码加到 CMyDlg::OnPaint()
窗口重新绘制,会重新绘制图片
void CMyDlg::OnPaint()
{
if(IsIconic())
{
CPaintDC dc(this); //定义设备上下文对象
SendMessage(WM_ICONERASEBKGND,(WPARAM)dc.GetSafeHdc(),0);
... //省略部分代码
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
dc.DrawIcon(x,y,m_hIcon); //重绘重新窗口图标
}
else
{
CDialog::OnPaint(); //调用其基类的相应函数
}
::SelectObject(dc1,bit);
::StretchBlt(::GetDC(::GetDlgItem(this->m_hWnd,IDC_TUPIAN)),1,1,450,80,
dc1,0,0,400,330,SRCCOPY);
//调用函数复制位图
}
函数SelectObject()中
使用两个句柄变量dc1和bit
表示兼容设备DC,和位图资源句柄