MFC给对话框设置背景图片

来源:互联网 发布:2016java面试自我介绍 编辑:程序博客网 时间:2024/05/21 06:49

修改对话框的OnPaint()函数如下

 

void CScanDlg::OnPaint()
{
 if (IsIconic())
 {
  CPaintDC dc(this); // device context for painting

  SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

  // Center icon in client rectangle
  int cxIcon = GetSystemMetrics(SM_CXICON);
  int cyIcon = GetSystemMetrics(SM_CYICON);
  CRect rect;
  GetClientRect(&rect);
  int x = (rect.Width() - cxIcon + 1) / 2;
  int y = (rect.Height() - cyIcon + 1) / 2;

  // Draw the icon
  dc.DrawIcon(x, y, m_hIcon);
 }
 else
 {
 CPaintDC dc(this);
 CRect     rc;
 GetClientRect(&rc);
 CBitmap   bitmap;
 bitmap.LoadBitmap(IDB_BITMAP1);    //这个IDB_BITMAP1要自己添加
 CBrush   brush;
 brush.CreatePatternBrush(&bitmap);
 CBrush*   pOldBrush   =   dc.SelectObject(&brush);
 dc.Rectangle(&rc);
 CDialog::OnPaint();
 }
}

原创粉丝点击