当前位置:编程学习 > wap >>

求救了,双窗口问题

帮忙看下这个主程序中d对话框是怎么显示出来的,莫名其妙啊
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
     Dialog w;
   myDialog d;

  if(d.exec()==QDialog::Accepted)
   {

    w.show();

    return a.exec();
    }
    else return 0;

    return a.exec();
}
--------------------编程问答-------------------- 你以为d.exec()是吃白饭的吗? --------------------编程问答--------------------

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
     Dialog w;
   myDialog d;

  if(d.exec()==QDialog::Accepted)   //d.exec()这边显示的。
   {

    w.show();

    return a.exec();
    }
    else return 0;

    return a.exec();
}
--------------------编程问答-------------------- 知道了,我也猜测是这个,这个应该是进入d窗口的消息循环吧。看看解释也没说显示啊 --------------------编程问答-------------------- Enters the main event loop and waits until exit() is called, then returns the value that was set to exit() (which is 0 if exit() is called via quit()). --------------------编程问答-------------------- 还有个问题,这个当我由d窗体进入w窗口时,d窗口为何被关闭?
是由于更换了消息循环程序a.exec()? --------------------编程问答--------------------
引用 5 楼 lsxkhu 的回复:
还有个问题,这个当我由d窗体进入w窗口时,d窗口为何被关闭?
是由于更换了消息循环程序a.exec()?

QDialog::Accepted这个说明你的d窗口已经接受了关闭事件 --------------------编程问答--------------------
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,