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

vb实现无闪烁画图

楼主sandy_zhang()2005-06-03 13:27:21 在 VB / 基础类 提问

在实现动态图形显示时,总会有闪烁的情况发生。在MFC里可以用双缓冲,那在VB里该如何实现呢? 问题点数:50、回复次数:7Top

1 楼DooDu(杜霖:I want,I can(开关拉))回复于 2005-06-03 13:40:21 得分 2

me.autoredraw=trueTop

2 楼sandy_zhang()回复于 2005-06-03 14:02:11 得分 0

这个似乎没有用Top

3 楼crycoming(瞎编)回复于 2005-06-03 14:15:40 得分 8

VB的办法比较苯,设Visible=false   好了再Visible=True  
   
  还有一种API的方法,先把图片加载在隐藏PictureBox中,然后在Copymemory   到指定设备  
  自己在网上找找   应当有例子的Top

4 楼sandy_zhang()回复于 2005-06-03 14:27:29 得分 0

嗯,好,我试试看  
  我正想用API函数试试看,这样可能就比较象MFC的双缓冲了Top

5 楼huangguanshu()回复于 2005-06-03 14:31:20 得分 40

应该先创建一个内存dc,在这个dc上画完图后,再将这个dc上的图象用bitblt复制picturebox  
  Top

6 楼sandy_zhang()回复于 2005-06-06 11:13:41 得分 0

嗯,原理我已经理解了,正在通过实践验证。谢谢各位!Top

7 楼okay2003()回复于 2005-07-12 09:15:10 得分 0

最简单有效的办法,其原理也是在内部实现了双缓冲功能。就是用一个imagelist控件来储存图形集,然后把要显示该图形集的容器(如:image,picturebox,form)依次与imagelist控件内不同编号的图形相连接。因为存在imagelist里面的图形已经在内存中,所以不用再在内存中绘制,实现了双缓冲。闪烁的问题解决了!  
   
  例:  
  首先设立一个image控件,和一个imagelist控件  
  然后在imagelist1控件内存入10个图形,  
   
  For   n   =   1   To   10  
    Set   Image1.Picture   =   ImageList1.ListImages(n).Picture  
  Next   nTop

相关问题

  • VB 画图
  • 无闪烁画图?内存画图
  • 无闪烁画图?在线
  • vb画图问题
  • 画图程序,消除闪烁?
  • @@@@怎样用VB画图?
  • 在VB中如何实现“画图”程序中快速填充多边形颜色
  • 系统托盘的闪烁图标在VB中怎么实现?
  • 如何实现逐步画图??
  • 高手请进,c实现画图

关键词

  • 图形
  • 控件
  • 内存
  • imagelist
  • 闪烁
  • 实现
  • 缓冲
  • picturebox
  • image

得分解答快速导航

  • 帖主:sandy_zhang
  • DooDu
  • crycoming
  • huangguanshu

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

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