Russian Qt Forum
Ноябрь 23, 2024, 05:21 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt Exception  (Прочитано 2888 раз)
nvek
Гость
« : Ноябрь 20, 2018, 09:02 »

В Delphi вызывается допустим
Код:
raise Exception.Create(S_NeedToSetDispRecFlag);
исключение это обрабатывается самой либой Делфи и выводит диологовое окно.
Есть ли в qt что то типо такого же...
Код:
QApplication::exceprion(...)
чтобы показалось диалоговое окно
Записан
nvek
Гость
« Ответ #1 : Ноябрь 20, 2018, 09:47 »

можно через notify
Код:
class MyApplication : public QApplication
{
public:
MyApplication(int argc, char *argv[]) : QApplication(argc, argv)
{

}

virtual ~MyApplication()
{

}

// reimplemented from QApplication so we can throw exceptions in slots
virtual bool notify(QObject * receiver, QEvent * event) {
try {
return QApplication::notify(receiver, event);
}
catch (std::exception& e)
{
//QMessageBox();
}
catch (...)
{

}
return false;
}
};
и в приложении где то сделать вызов throw. Все работает!
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #2 : Ноябрь 20, 2018, 10:07 »

Но не нужно.
Записан
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« Ответ #3 : Ноябрь 21, 2018, 16:23 »

Вообще сам Qt базируется на том, что бы не использовать исключения.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.131 секунд. Запросов: 22.