×掉子窗口后,子窗口还在接受数据的问题
-
当子窗口显示时,先关闭父窗口,调用的先后顺序为:
-
当子窗口显示时,先关闭子窗口,调用的先后顺序为:
找到原因:此时子窗口的析构函数没有执行
解决方案:
先说解决方案:给子窗口设置以下属性:
setAttribute(Qt::WA_QuitOnClose, true); //关闭此窗口,会立即执行析构函数
这时会出现关闭父窗口后,子窗口需要手动关闭的问题
我们需要关闭父窗口后,子窗口会一起关闭
解决方案:
给父窗口也设置以下属性:
setAttribute(Qt::WA_QuitOnClose, true); //关闭此窗口,会立即执行析构函数
然后在父窗口的析构函数中先调用子窗口的析构函数