硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2260|回复: 1
收起左侧

[emWin] 页面重绘的问题

[复制链接]

270

主题

605

回帖

1415

积分

至尊会员

积分
1415
发表于 2017-5-30 21:26:17 | 显示全部楼层 |阅读模式
QQ图片20170530211548.png

如图,上面校色的标题栏我用的是三个TEXT来显示,整个页面用的是一个WIN窗口,而不是FRAME。
现在的问题是,在从一个子页面返回到现在这个页面后,这个页面的标题上的时间并不会自动更新。
有什么好方法可以让这个时间自动更新呢?

我现在用的更新方法就是记录下每个页面里面上时间的TEXT的窗口句柄,然后调用TEXT_SetText()来显示时间。
这种方法有一个问题就是,每个页面内的时间TEXT的句柄是不一样的,只能在页面创建的WM_INIT_DIALOG消息里面进行初始化赋值。
一旦有页面切换和重绘时,这个句柄就变化了,如果直接调用TEXT_SetText()来显示时间时,有时会由于页面已经被关闭了,而导致发生错误。
我加了一个WM_IsWindow()用来判断是否被关闭。但另外一个问题又来了,就是需要每次在页面重绘时,再一次对这个TEXT的句柄进行赋值。
这样的话,就显得相当麻烦了,每个页面都得在WM_PAINT消息里面进行时间窗口的重新获取
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117635
QQ
发表于 2017-5-31 11:59:12 | 显示全部楼层
这种时间更新,开个定时器,让它自己更新就行了,不用去管理。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-19 16:19 , Processed in 0.038268 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表