CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

如何使图片付上对话框,但有不覆盖对话框上的其他控件?

楼主gothing()2002-04-06 15:00:51 在 VC/MFC / 基础类 提问

如何使图片付上对话框,但有不覆盖对话框上的其他控件? 问题点数:20、回复次数:1Top

1 楼huqiming(Super)回复于 2002-04-06 16:08:50 得分 20

void   CDlgBmpDlg::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  
  {  
  ///以下两行放在OnInitDialog()中比较好。  
  CBitmap   m_bmp;  
  m_bmp.LoadBitmap(IDB_BITMAP1);  
   
  CPaintDC   dc(this);  
  CDC   mem;  
  mem.CreateCompatibleDC(&dc);  
  BITMAP   bm;  
  m_bmp.GetBitmap(&bm);  
  CBitmap*   pOld   =(CBitmap*   )mem.SelectObject(&m_bmp);  
  CRect   rc;  
  GetWindowRect(rc);  
  dc.StretchBlt(0,0,rc.Width(),rc.Height(),&mem,0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);  
  mem.SelectObject(pOld);  
  return;  
  ///程序退出,必须调用m_bmp.DeleteObject();否则内存泄露  
  CDialog::OnPaint();  
  }  
  }Top

相关问题

  • *********对话框控件**********
  • 关于对话框中图片控件的问题:
  • 对话框里Picture控件显示的图片被弹出的对话框挡住后不能恢复
  • 在CFormView中 实现在另一个对话框图片控件中 绘图
  • 在对话框中用Picture控件显示jpg图片,好急,我是新手
  • 求splash(启动窗口)事例(要求图片覆盖对话框)
  • 请问哪位老大有可以在打开文件对话框中可以预览图片的控件,就好像PhotoShop的打开对话框一样!
  • 对话框显示图片
  • 请问可以把对话框里的10个图片控件的ID作为一个数组吗?
  • 我想在一个对话框里加一个picture控件,并且显示一个图片,怎么弄啊?

关键词

  • dc
  • 对话框
  • cyicon
  • cxicon
  • bm
  • mem
  • cbitmap
  • bmp
  • rect
  • rc

得分解答快速导航

  • 帖主:gothing
  • huqiming

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo