⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_26247.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:26247 发表者:oqpo 发表日期:2002-12-30 14:21:22
<br>主题:界面要不断刷新又要不闪烁,怎么办?
<br>内容:我在CDlg::OnIniDialog()中创建了一副位图bm.CreatBitmap&nbsp;&nbsp;&nbsp;&nbsp; (128,64,1,1,BUF);并初始化定时器SetTime(1,100,NULL)。<BR>在CDlg::OnPain()中输出位图到屏上。<BR>在CDlg::OnTimer()中使位图区域无效:InvalidateRect(m_rect, FALSE);<BR>我的位图数据在随时变化,我的界面要不断刷新,我用了定时器,可是这种方式会使界面不停闪烁,怎么办?谢谢帮助解答!<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:bb 回复日期:2002-12-30 14:57:42
<br>内容:在OnTimer()中直接输出位图到屏上。<BR><BR>OnTime(UINT nID)<BR>{<BR>&nbsp;&nbsp;1. prepare data and bmp<BR>&nbsp;&nbsp;2. GetDC <BR>&nbsp;&nbsp;3. Create a memDC<BR>&nbsp;&nbsp;4. memDC.SelectObject(&amp;bmp)<BR>&nbsp;&nbsp;5. dc.BitBlt(....)<BR>}
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:oqpo 回复日期:2002-12-30 15:28:05
<br>内容:楼上的兄弟啊,那样还是不行。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:bb 回复日期:2002-12-30 15:57:40
<br>内容:试试重载OnEraseBkgnd()<BR>OnEraseBkgnd(*pDC)<BR>{<BR>&nbsp;&nbsp;return FALSE;<BR>}<BR><BR>OnPaint()<BR>{<BR>&nbsp;&nbsp; CDialog::OnPaint();<BR>}<BR><BR>OnTimer() //如前<BR>{<BR>&nbsp;&nbsp;..<BR>}<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:oqpo 回复日期:2002-12-30 16:35:26
<br>内容:重载了OnEraseBkgnd(),背景就变成了打开本窗口之前时的背景!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:bb 回复日期:2002-12-30 16:55:06
<br>内容:当OnTimer工作时就会被刷新
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:oqpo 回复日期:2002-12-31 09:08:26
<br>内容:谢谢你,可还是不行,刷新不了。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:tigersky2000 回复日期:2002-12-31 09:32:47
<br>内容:一般来说用bb说的方法就可以了,如果每次refreash时,颜色差别很大的话,那总会有一点闪的,那是因为人眼的问题吧! :)
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:bb 回复日期:2002-12-31 09:33:35
<br>内容:等一会儿,我试一下。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:tigersky2000 回复日期:2002-12-31 09:40:42
<br>内容:我看过几本VC的书,上面说到关于无闪刷屏都是建议按bb这种方式做的
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:oqpo 回复日期:2002-12-31 09:44:29
<br>内容:谢谢两位,我在试一下
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:bb 回复日期:2002-12-31 10:23:28
<br>内容:另外,可以适当加大Timer的间隔也可以降低闪烁
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -