CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

VC 中如何解决重绘问题 !!!!急!!!!

楼主cuikai01()2003-06-02 21:50:50 在 C/C++ / C语言 提问

本人在作一绘图程序时,每当出现窗体最大化或有对话框出现时,客户区的图形  
  就会消失,希望哪位大侠能指教。  
  说明:本程序能在客户区任意画图形,所以不能在OnDraw中直接写绘图程序。  
  希望大侠能讲的详细,最后由代码说明,多谢了!!  
   
  问题点数:40、回复次数:2Top

1 楼lifanxi(Byron)回复于 2003-06-02 21:57:28 得分 40

一种方法就是画什么都记下来,在OnDraw中重绘。  
  另一种方法就是画什么都是在一个memory   dc中画,在OnDraw中这个Memory   DC中的东东BitBlt到真实的dc上。Top

2 楼BinaryWorld(为实现中华软件产业自强而读书!)回复于 2003-06-02 23:30:30 得分 0

最大化,移动回调用onDraw,如果该函数内无任何代码,则客户区重绘用背景刷刷新客户区。如果要解决,采用楼上的两种方法都可以,但推荐第二种,第二种就是doublebuffer的方法效果很好,可以消除闪烁。  
   
  遮蔽,会在被遮蔽的区域小时后,同样会调用onDraw或onPaint里面的代码,不过这些是由系统完成的,因为系统会剪切相应的区域的代码进去,如果你要自己完成的话,请采用楼上的第二种方法。这样可能会造成一定的浪费,如果你很在乎你代码的执行速度,那么通过API得到遮蔽最大rect区域,然后用bitblt拷贝对应的区域进去。并不是十分困难!Top

相关问题

  • 急!!!难道要重装vc?
  • vc绘图问题
  • 『『求助VC绘图』』
  • 关于vc绘图
  • 利用vb实现vc中的重绘窗口功能?
  • VC紧急求助
  • VC++的前途?急!!!
  • 急!!!delphi中嵌VC!!!
  • 有分加。急!急!急!(VC++)
  • VC

关键词

  • 代码
  • 区域
  • 客户
  • ondraw
  • 遮蔽
  • 方法
  • 客户区
  • 程序

得分解答快速导航

  • 帖主:cuikai01
  • lifanxi

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

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