我有一个基于对话框的MFC应用程序,它有很多文本编辑和其他一些东西。
我打电话给Invalidate();因为所有这些文本编辑都需要更新(它们都与线程中设置的全局变量相关联),所以每秒大约10x /秒
我原本只希望文本编辑字段闪一点,但整个对话框都闪烁,这不太好。
有更好的方法吗? UpdateData()只是崩溃了
答案 0 :(得分:2)
如果要强制立即重绘所有窗口,减少闪烁,请在对话框中定义WS_CLIPCHILDREN,并使用带有RDW_UPDATENOW RDW_ALLCHILDREN的RedrawWindow。当编辑控件被更改时,它们将在此时重新显示。
但是,每秒更新控件十次可能不是使用UI通知用户的好方法。
BTW:当UpdateData崩溃时,你的程序中有一个大错误。你应该解决它。 UpdateData不会立即重新显示编辑和静态。