MFC中如何使用postInvalidate()刷新界面

如何调用,具体如何写代码,写在什么位置?voidCKW1405_22SYAView::OnDraw(CDC*pDC){中间部分省略CKW1405_22SYAView.In... 如何调用,具体如何写代码,写在什么位置?
void CKW1405_22SYAView::OnDraw(CDC* pDC)
{
中间部分省略
CKW1405_22SYAView.Invalidate();

}

为什么报错了
展开
 我来答
bhtzu
推荐于2016-01-10 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4128万
展开全部
  1. 如果不是在Android下,建议使用Invalidate()函数而不是postInvalidate

  2. 你在哪里需要触发重绘,就写在哪里,用法只是在设置好显示参数后,针对某个视图窗口:xxView.postInvalidate();即可。

更多追问追答
追问
我在void CKW1405_22SYAView::OnDraw(CDC* pDC)里使用这个语句报错,错误报告里感觉不对 error C2143: syntax error : missing ';' before '.'
追答
你当然不能再OnDraw里面调用这个语句,因为这个语句就是“触发重绘”,而触发重绘的一步,就是调用OnDraw。
另外,你在视图类中调用?建议你还是先看看相关帮助文档和书籍吧,移动端开发中,UI线程内部应该使用Invalidate,并且不能在OnDraw中使用。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式