• 3611阅读
  • 4回复

[讨论]关于弹出的窗口关闭问题 [复制链接]

上一主题 下一主题
离线hezf
 

只看楼主 倒序阅读 楼主  发表于: 2016-04-08
场景是这样的:
1、我点击一个按钮,然后弹出个dialog
2、这个dialog是new出来的,每点击一次就new一个
3、当我处理完毕后,想关闭这个dialog,点击右上角的x的时候,这个dialog是不会析构的,所以我在closeEvent里面用了this->deletelater,让其释放

我想问问这种处理方式是否合理?
none
离线robinsonsir

只看该作者 1楼 发表于: 2016-04-08
赶脚限制还有点多哦http://doc.qt.io/qt-5/qobject.html#deleteLater ,显式调用析构函数~QDialog()不行吗?

离线hezf

只看该作者 2楼 发表于: 2016-04-08
回 robinsonsir 的帖子
robinsonsir:赶脚限制还有点多哦http://doc.qt.io/qt-5/qobject.html#deleteLater ,显式调用析构函数~QDialog()不行吗?
 (2016-04-08 10:02) 

感觉差不多的样子,deleteLater应该是事件循环处理完毕,才进行~,所以感觉他应该更加安全
none
离线kimtaikee

只看该作者 3楼 发表于: 2016-04-08
  1. setAttribute(Qt::WA_DeleteOnClose);

离线hezf

只看该作者 4楼 发表于: 2016-04-08
回 kimtaikee 的帖子
kimtaikee:
  1. setAttribute(Qt::WA_DeleteOnClose);


谢谢大神回复
none
快速回复
限100 字节
 
上一个 下一个