qt界面切换会出现卡顿

weixin_38218450 2018-03-21 06:52:03
大神们好,我是这样写的,但是放到arm板上去测试,先点击主界面的按钮,然后停顿一下才刷新界面,才会出现music_wid 这个界面,大概有一秒的时间,请问怎么解决这个问题

void MainWindow::slot_funbtn()
{
int index=sender()->objectName().toInt();
music_wid = new Music;
connect(music_wid->top_widget->m_btnexit,SIGNAL(clicked(bool)),this,SLOT(slot_return()));
music_wid->show();

QTime dieTime = QTime::currentTime().addMSecs(5);
while( QTime::currentTime() < dieTime )
QCoreApplication::processEvents(QEventLoop::AllEvents, 50);

this->hide();

}
void MainWindow::slot_return()
{
this->show();
QTime dieTime = QTime::currentTime().addMSecs(5);
while( QTime::currentTime() < dieTime )
QCoreApplication::processEvents(QEventLoop::AllEvents, 50);
music_wid->close();

}
...全文
1621 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhxianbin 2018-03-22
  • 打赏
  • 举报
回复
music_wid = new Music; 放到构造函数中,定时器超时不要 close 掉、hide

742

社区成员

发帖
与我相关
我的任务
社区描述
该论坛主要探讨Linux系统在IBM Power平台的安装、部署、应用开发等话题,并为网友们提供自由交流的平台。
社区管理员
  • Power Linux社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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