如何在执行QDrag期间安全删除小部件?

时间:2018-11-01 07:49:56

标签: c++ qt

我有一个小部件,其寿命由计时器定义:当计时器到期时,小部件关闭。

此小部件具有可拖动的对象,这些对象实现了类似的功能

//some code here...

QDrag *drag = new QDrag(this);
drag->setMimeData(mime);
drag->setPixmap(pixmap);
drag->setHotSpot(hotSpot);
drag->exec();

//some code after...

如果我开始拖动一个项目,并且在拖动过程中,计时器到期,它将删除小部件及其所有子级,这意味着drag->exec()之后的所有代码都不会执行,因为该对象已被破坏

如何防止这种行为并优雅地删除对象?

0 个答案:

没有答案