最近在用QT做界面时,菜单点击按钮后的界面跳转实在很费神。所以最后做成了比较简单的新建ui并跳来跳去的过程。但这样也面临了一个问题,每次隐藏父界面并打开子页面时,中间都会有一个闪烁的过程。当频繁地操作页面时,会觉得十分晕头转向。
所以,为了解决这个问题,我发现了一个方法,那就是先显示子页面再隐藏父页面。而隐藏父界面的操作比显示子页面的操作快得多,所以可以在这个过程中间加一个延时。
代码如下:
Thelogin->show();//子界面出现
QTime dieTime = QTime::currentTime().addMSecs(300);//延时300毫秒
while (QTime::currentTime() < dieTime)
QCoreApplication::processEvents(QEventLoop::AllEvents, 100);
this->hide();//主界面关闭
记得在代码开头引入头文件QTime,这个延时时间可以自己斟酌,我试了下在自己电脑里面延时300毫秒的显示效果更佳。这个方法能稍微缓解切换界面时的闪烁问题,如果还有更好的方法望告知。
参考网址: https://blog.csdn.net/liunanya/article/details/97099377