问题描述
A界面->B界面->C界面->D界面->E界面……->N界面,那么怎么实现从第N个界面点击按钮立即返回A界面?
解决办法
- A->B时,用hide()方法隐藏掉A界面。
- 我们一直点击,最后进入到了N界面,然后在N界面里,使用如下代码获取到指向A界面的指针:
foreach (QWidget *widget, QApplication::allWidgets()){
qDebug()<<widget->windowTitle();//打印出所有的窗口标题,看看有没有我想要的A窗口
QString title=widget->windowTitle();//窗口标题
if(title=="学生成绩管理系统"&&widget->isWindow()){//我的A界面的窗口标题就是“学生成绩管理系统”
this->close();//关闭当前的N界面
widget->show();//显示A界面
return;//找到了A界面就结束
}
}
注意:这里的if(title==“学生成绩管理系统”&&widget->isWindow()),请根据你自己的情况修改。这个循环就是遍历所有的Widget,可以拿到指向A界面的指针,然后用show()函数显示出来就OK啦。
结语
网上搜了好久,本人都没有找到答案,找到的全是只有两个界面的,最后自己去阅读API文档找到的办法,如果您有更好的方法,欢迎提出来。