也许正在发生的事情是,你必须这是走出去的范围对象。
当事情被删除,或不再可访问,然后您尝试访问它,你就会得到这个。
个两个动作,你应该采取:
如果创建Qt中的一个对象,把它放在一堆,然后父母就在对象树。
例如:
QLabel * label = new QLabel(); // put it on the heap using new
ui->centralWidget()->layout()->addWidget(label);
你的标签,现在是在对象树。标签的父级是布局对象。它的父母是中心部件。它的父母是ui。
当窗口关闭时,它会自动清理所有的孩子,或者换句话说,你不必调用删除每一个。
偶尔例子表明不上堆的东西,但通常除非是像没有其他地方引用对话框中的短命的项目并不在大规模的例子很好地工作。
也在你的closeEvent()你应该清理对你的数据库的访问。查看数据库示例并查找用于关闭句柄到数据库的代码行。
如果您正在清理并且有可能在运行时不可用,则应该检查。
if(label)
label->setText("I am closing now");
而且在某些情况下,您可能希望在删除或关闭后将指针设置为零。
希望有所帮助。