2013-05-02 27 views
1

我使用下面的方法从现有打开一个新的形式 - 这是可以接受的

void MyForm::MySlot() 
{ 
    //This method loads up te form for historical feeds 
    NewForm *w = new NewForm(); 
    w->show(); 
} 

是这种方式打开一个新的形式接受目前重新开放形式。另外,如何在表单关闭时删除w指针?

我在想什么是设置一个信号,当窗体关闭时会触发。该信号的槽将删除w。这是一种可接受的方式,还是有更快的方法来实现这一点?

+0

除非它的引用对象在其他地方,'delete w'应该可以工作。有一段时间没有使用qt,但我不认为这会在其他地方存在,所以这应该是安全的。 – RageD 2013-05-02 22:17:22

+0

这种形式('MyForm')将成为主要形式(关闭另一个永远不会结束程序并关闭这个程序总是会)? – chris 2013-05-02 22:28:09

+0

不,它不会是主要的 – Rajeshwar 2013-05-02 22:30:50

回答

0

如果您想要关闭窗体,但稍后使用它,请将新窗体的父窗体设置为主窗体。这样,当主窗体被删除时,Qt也会处理删除新窗体。

相关问题