qt中destroyed和close窗口有什么区别

qt的assistant中关于destroyed只有QObject类的该信号,其中说的很清楚“对象被destroyed前将立即发送该信号,其不能够被阻塞。该对象的所有子对象在信号发送以后会被立即销毁。”
而QWidget与QWindow差不多都是释放窗口相关资源。
QWidget的close槽函数是像widget发送QCloseEvent,如果widget未设置Qt::WA_DeleteOnClose标志的话,将隐藏widget,并不会销毁相关资源。如果设置了该标志,那么会再发送destroy信号,销毁相关资源。
QWindow的close槽是调用destroy来销毁窗口资源的。不过我们一般不直接使用qWindow。
综上,两者之间的区别就是close一般只是将窗口隐藏,而窗口实体实际上还存在于内存中,等待再次显示。而destroy则销毁窗体。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值