CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  基础类

关于EasyGrid的canvas的问题,高手救急!!

楼主babycathq2000()2006-05-03 19:08:18 在 C++ Builder / 基础类 提问

我用EasyGrid的canvas画一条直线,测试时明显可以看到直线画成功了,但却是一瞬间一显即过,请问这是什么问题。 问题点数:20、回复次数:9Top

1 楼babycathq2000()回复于 2006-05-03 19:18:16 得分 0

补充一点,是在formshow的时候出现这个问题。如果用界面中的按钮直接画是正常的。Top

2 楼jjwwang((空园歌独酌,春日赋闲居))回复于 2006-05-03 21:03:14 得分 0

没用过EASYGRID.  
  我想是重绘的问题.  
  Top

3 楼BlueDeepOcean(蓝色·深海)回复于 2006-05-03 22:14:02 得分 10

应当写在OnPaint中的吧。为什么要写入OnShow中呢?Top

4 楼babycathq2000()回复于 2006-05-04 12:52:39 得分 0

我的目的是在OnShow的时候就要将直线画好并显示出来。刚才试了一下在OnShow中调用OnPaint,是同样的现象,一闪而过。在其父界面先调用OnShow,接着再调用OnPaint也是同样,我不知道为什么。Top

5 楼babycathq2000()回复于 2006-05-04 13:19:28 得分 0

我发现,在其父界面先调用OnShow,接着再调用OnPaint的情况下,绘画是可以成功的,但是界面刚show的瞬间,直线只是一闪而过,但改变窗口大小的时候,直线就显示了出来,这是什么原因呢??Top

6 楼babycathq2000()回复于 2006-05-04 22:49:21 得分 0

另外我发现,在任意窗体上晃一条直线,当缩小窗体大小,直至直线的部分已经不在窗体显示的范围内时,再扩大窗口,已经画的直线就消失了,谁能解释一下为什么??怎样处理这种问题??Top

7 楼BlueDeepOcean(蓝色·深海)回复于 2006-05-04 23:22:03 得分 10

因为窗体的创建过程是:  
  OnCreate->OnShow->OnPaint->OnActivate->OnPaint  
  的一个过程。Top

8 楼babycathq2000()回复于 2006-05-05 11:48:33 得分 0

可是我的窗体内显示的是很多行的表格,需要时常滚动,这样应该没有办法通过双缓冲和hdc的方法来处理这个问题,请问还有什么别的办法吗?Top

9 楼babycathq2000()回复于 2006-05-08 09:10:39 得分 0

自己顶Top

相关问题

关键词

得分解答快速导航

  • 帖主:babycathq2000
  • BlueDeepOcean
  • BlueDeepOcean

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

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