| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > Предупреждение после закрытия программы |
| Автор: gordmiand 24.1.2013, 09:19 |
| connect(this, SIGNAL(sigClose()), qApp, SLOT(quit())); по онклику кнопки испускаю сигнал sigClose() — программа завершается с кодом 0 (что верно), но с сообщением: Qt has caught an exception thrown from an event handler. Throwing exceptions from an event handler is not supported in Qt. You must reimplement QApplication::notify() and catch all exceptions there. Если выходить, например, по Alt/F4 (хотя тоже иногда выдается такое сообщение) или остановкой программы (из-под Qt-креатора), то программа чистенько завершается...Подскажите пож-та что это за предупреждение и в чем у меня некорректное закрытие программы (программа достаточно большая: многопоточная и с графикой)...использую Qt версии 4.6.1, операционка — Ubuntu 12.04. |
| Автор: borisbn 24.1.2013, 09:34 |
ИМХО проблема в завершении потоков. Ты для всех потоков вызываешь wait() ? Ты точно нигде из потока не обращаешься к GUI напрямую ? |
| Автор: gordmiand 24.1.2013, 21:01 |
| я для потоков вызываю(ал) terminate(), заменил на wait() - вроде все нормально работает... |