CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

紧急求助:重画picture控件,应该调用哪个函数,在线等,谢谢。小弟快没有分了,各位大侠帮帮忙呀。

楼主laohubinbin(老虎斌斌)2005-04-03 19:03:03 在 VC/MFC / 基础类 提问

CFormView中有个Picture控件  
  加载图片后  
  如果最小化窗口  
  然后在最大化窗口  
  控件中的图片就没有了  
  需要怎样处理呢?  
  需要在哪个函数中重新调用画图的函数呢?  
  谢谢 问题点数:10、回复次数:7Top

1 楼laohubinbin(老虎斌斌)回复于 2005-04-03 21:01:25 得分 0

继续求助  
  谢谢Top

2 楼Mackz(在相互)回复于 2005-04-03 21:52:21 得分 0

你是怎么加载图片的?Top

3 楼Gogogogogoogle(狗哥)回复于 2005-04-03 21:54:20 得分 5

OnPaintTop

4 楼imyourkobe()回复于 2005-04-03 23:38:11 得分 5

就是在OnPaint或OnDraw里调用一下你的绘图函数,你的函数执行一次就不再执行了,  
  OnPaint和OnDraw是在客户区需要刷新时自动执行的,这样你最小化后再最大化就回重绘Top

5 楼laohubinbin(老虎斌斌)回复于 2005-04-04 10:47:10 得分 0

这是加载及显示图片的函数雏形:  
  void   CDUT_Geography_QueryView::QueryDisplayPicture(LPCTSTR   strPictureName)  
  {  
  CDib   queryed_picture;  
   
  if   ((queryed_picture.AttachMapFile("xiaohui.bmp",TRUE))==NULL)  
  {  
  AfxMessageBox("没有找到该图片");  
  }  
  CRect   rectShow;  
  /*CWnd   **/pWnd=GetDlgItem(IDC_DETAIL_QUERY_PICTURE);//指定控件的ID  
  pWnd->GetClientRect(rectShow);  
  pWnd->ClientToScreen(&rectShow);  
  CDC*   pDC;  
  pDC=pWnd->GetDC();  
  queryed_picture.UsePalette(   pDC   );  
          //显示  
  CPoint     ptHere;  
  ptHere.x   =   0;  
          ptHere.y   =   0;  
  CSize     szHere;  
  szHere.cx=rectShow.right-   rectShow.left;  
  szHere.cy=rectShow.bottom-rectShow.top;  
  queryed_picture.Draw(pDC,ptHere,szHere);  
  ReleaseDC(pDC);  
   
  queryed_picture.Empty();  
   
  }  
   
   
  我重载了OnPaint函数,在函数中调用了上面的函数:  
  void   CDUT_Geography_QueryView::OnPaint()    
  {  
  CPaintDC   dc(this);   //   device   context   for   painting  
   
  //   TODO:   Add   your   message   handler   code   here  
  if   (m_bHaveQueryed)                                                 《-----判断文件是否打开,一个全局变量  
  {  
  QueryDisplayPicture(m_strTmp);         《-----调用函数  
  }  
   
  //   Do   not   call   CFormView::OnPaint()   for   painting   messages  
  }  
   
   
  但是最小化,然后最大化后  
  Picture控件中的的图片只是闪了一下,然后又没有了  
  怎么回事呢?  
  谢谢了  
  大侠们帮帮我呀  
  Top

6 楼laohubinbin(老虎斌斌)回复于 2005-04-04 11:14:56 得分 0

顶一下  
  恳求大家啦  
  小弟好着急呀Top

7 楼laohubinbin(老虎斌斌)回复于 2005-04-04 12:00:38 得分 0

继续求助  
  谢谢Top

相关问题

  • 函数调用控件的问题
  • activex控件是怎样调用网页中的vbscript函数的???
  • 我能找出调用函数的控件名吗?
  • 如何在网页调用ActiveX控件的方法或函数?
  • 怎样调用ActiveX和DLL的控件和函数??
  • 如何调用用户控件里的公共函数
  • 如何在网页中调用windows控件库中的函数?
  • asp.net中web控件对js文件中函数的调用
  • 高手请进:控件调用外部函数
  • 请问是用怎样用函数调用控件?

关键词

  • 函数
  • 控件
  • 执行
  • rectshow
  • 调用
  • pthere
  • szhere
  • picture
  • queryed
  • 谢谢

得分解答快速导航

  • 帖主:laohubinbin
  • Gogogogogoogle
  • imyourkobe

相关链接

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

广告也精彩

反馈

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