我在做一个类似于星际争霸地图编辑器的程序。由于地图的尺寸比视的尺寸要大,所以用到了CScrollView类。但是有一个问题就是当CScrollView类滚动时要重画界面,可是这种滚动重画会闪烁。现像是我画上去的图片和白色的背景交替切换,就是这样闪的。我想出现这种现像的原因很可能是当我在CScrollView类的OnDraw事件中画图时基类总是先把背景涂上白色,这样当我再向白色背景上画图时就会发现白色背景和深色的前景交替闪烁。要解决这个问题只能屏蔽基类将背景填为白色的操作,可是我不知道用什么方法。有没有人能帮小弟一把。
还有就是我在OnPaint事件中试过一次也没能实现。这个功能不是不可实现的,因为星际争霸的地图编辑器已经实现了。
还有就是我在OnPaint事件中试过一次也没能实现。这个功能不是不可实现的,因为星际争霸的地图编辑器已经实现了。
解决方案 »
- 数据存储为txt格式
- 用什么api可以挂起一个进程当前的进程? 然后另一个进程如何能唤醒它? 假设我是admin用户
- 编译boost_1_33_1出现问题,
- 主窗体置前
- IXMLDOMNode如何作为输出参数
- 如何获得ADO data、DataGrid、DataCombo、DataList等ActiveX控件的函数的详解
- 完全柔性绳的推挤
- 视频捕获与实时单祯图象处理问题,急!!!!!
- 来着有分!
- 用VC#编写的程序能够在不安装VS.net的机器上运行?
- 怎样在VC++中的Win32 Application生成的程序中加入对话框
- 怪事,求救高手!在写OCX控件中动态引用MFC可以静态引用MFC不行!不信请看下面的代码.苦闷中...
重载BOOL CXXXView::OnEraseBkgnd(CDC* pDC)
{
return true;
}
这样就不会自动绘制白色背景了
switch(nSBCode)
{
case SB_ENDSCROLL:
this->RedrawWindow();
..........//重画代码
break;
}