• 5348阅读
  • 4回复

问个初级问题:怎样恢复MAIN函数中的窗口 [复制链接]

上一主题 下一主题
离线noeatfox
 

只看楼主 倒序阅读 楼主  发表于: 2013-12-25
我在MAIN函数中创建了一个窗口,就是最常见的那种代码:
#include <QApplication>
#include "prewindow.h"



int main(int argc,char **argv)
{
    QApplication app(argc,argv);
    PreWindow prepare;
    prepare.showMaximized();
    return app.exec();
}
但我在创建的PREPARE窗口中又创建了一个窗口(这个才是程序的“主窗口”MAINWINDOW),但我想关闭这个MAINWINDOW想回到PREPARE窗口,怎样在“主窗口”函数中找到MAIN中的PREPARE窗口的指针以重新恢复它?我现在的代码只知道隐藏,却不知道怎么恢复。

MainWindow::MainWindow( )
{
    setAttribute(Qt::WA_DeleteOnClose);
    button=new QPushButton("main window button",this);
    connect(button,SIGNAL(clicked()),this,SLOT(returnPre()));
}

void MainWindow::returnPre()
{
    this->hide();
//how to show prepare again? prepare.show()?
}
离线roywillow

只看该作者 1楼 发表于: 2013-12-25
告诉MainWindow那个PreWindow的指针
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线noeatfox

只看该作者 2楼 发表于: 2013-12-25
引用第1楼roywillow于2013-12-25 18:39发表的  :
告诉MainWindow那个PreWindow的指针

就是不懂得如何告诉,才到这里来问的啊。MAIN。CPP可以很容易获得MAINWINDOW,PREWINDOW对象的指针,可要在MAINWINDOW里获的前一窗口对象的指针怎么弄,我搞不懂。搞个静态变量老是要报错。
离线friendbaby

只看该作者 3楼 发表于: 2013-12-25
在设计界面之前一定要考虑好界面的层级关系,这两个到底谁是父窗口,谁是子窗口,或者他俩是兄弟关系?
Smiling is best language , can express everything , also can conceal everything.
离线roywillow

只看该作者 4楼 发表于: 2013-12-26
按照lz的设计,直接给mainwindow提供一个成员函数,在调用mainwindow的地方(或者其他合适的地方)通过这个成员函数来告诉mainwindow所需要的指针就是了,然后mainwindow存起来,用的时候就调用
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
快速回复
限100 字节
 
上一个 下一个