我正在关注我的QT模块的文字处理器教程。
它要求我设置此属性:
的MainWindow ::的setAttribute(Qt的:: WA_DeleteOnClose);
问题出现在我运行应用程序时会导致错误,说应用程序意外关闭。
它还要求我做一个actionExit动作并添加到文件工具栏,它没有显示,我猜这是因为我在OSx上写它并退出/退出是照顾你的使用cmd + Q快捷方式。
我想知道是否有人可以为我解释这个问题,以便我知道以备将来参考。如果需要,我可以发布教程+源代码。
由于
编辑:从调试器回溯(希望这是正确的)
0 __pthread_kill 0 0x7fff8eaff212
1 pthread_kill 0 0x7fff86f7eaf4
2 abort 0 0x7fff86fc2dce
3 free 0 0x7fff86f96959
4 MainWindow::~MainWindow mainwindow.cpp 22 0x100002cff
5 QObject::event 0 0x100e48906
6 QWidget::event 0 0x1000ecd5e
7 QMainWindow::event 0 0x10049cadb
8 QApplicationPrivate::notify_helper 0 0x10009593d
9 QApplication::notify 0 0x10009bdc4
10 QCoreApplication::notifyInternal 0 0x100e3417c
11 QCoreApplicationPrivate::sendPostedEvents 0 0x100e355a0
12 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ 0 0x7fff90925101
13 __CFRunLoopDoSources0 0 0x7fff90924a25
14 __CFRunLoopRun 0 0x7fff90947dc5
15 CFRunLoopRunSpecific 0 0x7fff909476b2
16 RunCurrentEventLoopInMode 0 0x7fff8d0f60a4
17 ReceiveNextEventCommon 0 0x7fff8d0f5d84
18 BlockUntilNextEventMatchingListInMode 0 0x7fff8d0f5cd3
19 _DPSNextEvent 0 0x7fff91a00613
20 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] 0 0x7fff919ffed2
... <More>
答案 0 :(得分:1)
你的MainWindow对象是否在堆栈中声明了?如果是这样,那么DeleteOnClose不是一个好主意,只是因为删除堆栈中的对象是一个错误。