本帖最后由 logo 于 2023-8-4 14:58 编辑
我在对话框回调函数WM_TIMER消息里使用TEXT_SetText函数刷新数据显示会闪屏,也参考了这个文章https://blog.csdn.net/qq_41930631/article/details/118546326
但是我测试没有用。
[C] 纯文本查看 复制代码 case WM_TIMER:
TEXT_SetText();
GUI_Exec();
最后我的解决方式是直接用GUI_DispStringAt函数显示就好了。
[C] 纯文本查看 复制代码 case WM_TIMER:
GUI_DispStringAt();
我对比了下发现当采用TEXT_SetText();方式时,GUI_Exec();这一句执行后,会立马进入case WM_PAINT:,在进入case WM_PAINT:时候屏幕其他的我不想被更新的地方也已经被清空了,然后再自动显示出来,这样就形成了闪屏。但是 GUI_DispStringAt();却不会产生 WM_PAINT消息,不会去清空其他地方显示的内容。
|