嵌入式QT界面切换

El_Wood 2014-08-06 03:31:21
我的两个QT界面,直接使用指针指向这两个界面,使用hide和show进行切换,在虚拟机上调试的时候没有问题,但是在arm板子上进行切换的时候 出现了停顿的现象,这种现象 有没有其他方式处理???请大神指教一下
...全文
453 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Judee139 2016-12-09
  • 打赏
  • 举报
回复
遇到同样问题,按1楼方法成功解决,谢谢!
foruok 2014-08-08
  • 打赏
  • 举报
回复
也可能是你的 Widget 先绘制了默认的背景,而 Widget 内的其它元素出来的慢。你设置一些属性,不要让 Qt 自动填充 Widget 的背景。Qt::WA_NoSystemBackground 或Qt::WA_OpaquePaintEvent
yjzl1911 2014-08-08
  • 打赏
  • 举报
回复
引用 7 楼 foruok 的回复:
你那个空白页面是 QWS的桌面背景色。在切换 Widget 的间隙,没有新界面,就会显示桌面背景。
在QT的代码里先show新界面再hide旧界面就是为了保证在切换Widget的时候有界面显示。其实我怀疑是linux的framebuffer 或者 LCD驱动这一层给乱序了,没有做到先show再hide。
El_Wood 2014-08-07
  • 打赏
  • 举报
回复
1楼说的有理啊,中间需要延时,我加上延时之后就没这问题了,哎,本以为不加延时反应更快,结果加上延时之后就正常了,这是什么原因呢?结贴啦
foruok 2014-08-07
  • 打赏
  • 举报
回复
你那个空白页面是 QWS的桌面背景色。在切换 Widget 的间隙,没有新界面,就会显示桌面背景。
El_Wood 2014-08-07
  • 打赏
  • 举报
回复
引用 4 楼 Symfund 的回复:
为什么要hide? show会直接盖住前一个画面呀!
不hide旧页面的话,当两个页面都show之后 是无法进行切换的了。
El_Wood 2014-08-07
  • 打赏
  • 举报
回复
引用 3 楼 foruok 的回复:
什么样的停顿?
这两个页面我都使用了自定义的背景图片,在切换的过程中,会显示一会儿 一个空白页面,这个时间有些短大概在1秒钟左右。切换时的效果是,旧界面从上到下刷掉,然后新界面从下到上刷新的,所以在旧界面隐藏完之前就会出现一个空白页面(这个现象是多次观察得出的,也可能描述得不是很准确)
Symfund 2014-08-06
  • 打赏
  • 举报
回复
为什么要hide? show会直接盖住前一个画面呀!
foruok 2014-08-06
  • 打赏
  • 举报
回复
什么样的停顿?
El_Wood 2014-08-06
  • 打赏
  • 举报
回复
引用 1 楼 yjzl1911 的回复:
先show新界面;再hide旧界面。中间加个几毫秒的延时,其间不要去响应鼠标事件。
我是先show新的界面再hide旧界面,在虚拟机中调试时没这个问题的,但是在arm嵌入式板子上,在这中间有个停顿,也就是不能直接就看到新界面。
yjzl1911 2014-08-06
  • 打赏
  • 举报
回复
先show新界面;再hide旧界面。中间加个几毫秒的延时,其间不要去响应鼠标事件。

16,215

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧