我花的一个表盘在timer间距较小时有闪屏现象,如何解决?如能提供源代码或网址参考更好.
解决方案 »
- 关于MS SQL Server text or image 字段的存储方法,探讨。
- 如果一个AVI的视频文件内部是压缩存储的。那么如何解压读取呢?
- 我用ATL编了一个控件,又想在里面调用一个别的控件,如时间控件,该怎么办?
- 请教一个问题
- 有没有做过截取网络数据包的程序高手,有钱赚!高手请进。
- 关于Windows认证---包装 MSV1_0.DLL
- 采用stack实现计算器混合计算功能,并动态显示分步计算结果的编程思路?给出设计思路及提示者都有分!!
- 如何实现异种操作系统下的网络通信? (使用SOCKETS)
- 多线程数据库问题,高手请进
- 感觉高手好像都懒得回答问题!!!是不是都自己搞研究去了????或者不来CSDN???????
- 请大家谈谈Visual studio.NET的中文版好呢?还是英文的好?
- 怎么判断RadioButton是否被点中了,用什么函数?
m_pMemDC->CreateCompatibleDC(&pDC);
m_pBitmap->CreateCompatibleBitmap(&pDC,1600,1280);
CBitmap* pOldBitmap = (CBitmap*) (m_pMemDC->SelectObject(m_pBitmap));
m_pOldBitmap = m_pMemDC->SelectObject(m_pBitmap);
m_pMemDC->SelectClipRgn(NULL);
CBrush *backgroundBrush;
backgroundBrush = new CBrush;
backgroundBrush->CreateSolidBrush((COLORREF)::GetSysColor(COLOR_WINDOW));
CBrush *pOldBrush = m_pMemDC->SelectObject(backgroundBrush);
m_pMemDC->PatBlt(0, 0, 1600, 1280, PATCOPY);
m_pMemDC->SelectObject(pOldBrush);
delete backgroundBrush;
还有页翻转法,可以达到更好的效果,不过GDI可能不行,得用directX。
原理很简单,在显存中创建多个显示页,轮流在各个页上绘图,并指定显示设备轮流显示各个页。
Rigel(猎户座-参宿七)所说,类似于不洁矩形(dirty rectangle)
现在内存中把要输出的内容创建完
再一次话到屏幕
重画屏幕时,避免全部重画
可以使用这个函数
void InvalidateRect( LPCRECT lpRect, BOOL bErase = TRUE );
使用时先计算需要重画的矩形lpRect