![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() ![]() |
![]() |
NetAnton |
![]()
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 112 Пол: Мужской Репутация: ![]() ![]() ![]() |
В приложении есть процедура HandleException(Sender: TObject; E: Exception);
В ней выводится MessageBox с информацией: класс ошибки - E.ClassName, само сообщение ошибки - E.Message, класс объекта-генератора ошибки - Sender.ClassName. В начале загрузки форм имеется присвоение Application.OnException:=HandleException. Как я тестировал - в код нажатия какой-то кнопки вписывал raise EMathError.Create('сообщ.') и получал красивый обработчик исключений. Но если, допустим, идет вызов процедуры через ту же кнопку, то при возникновении ошибки в процедуре выдается информация о кнопке, а не процедуре. Проблема в этом. Хотелось бы еще как-то узнать через Sender не только класс виновника, но и его конкретное имя. За ответы всем спасибо. Пошел мучать дальше эти эксепшны... -------------------- Я люблю этот форум!
|
NetAnton |
![]()
Сообщение
#2
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 112 Пол: Мужской Репутация: ![]() ![]() ![]() |
Опять я. Как всегда забыл еще одно. :-)
В случае возникновения ошибки в процедуре таймера, сообщения выдаются через указанный период (боже упаси, если он сильно маленький). Подскажите, как заблокировать работу приложения, когда светится модальное окно с сообщением. -------------------- Я люблю этот форум!
|
KRUTOY |
![]()
Сообщение
#3
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 68 Пол: Мужской Репутация: ![]() ![]() ![]() |
NetAnton
Цитата Но если, допустим, идет вызов процедуры через ту же кнопку, то при возникновении ошибки в процедуре выдается информация о кнопке, а не процедуре. В каком виде она выдаётся и куда :o , поясни?? В принципе, наверно, параметром передачи является класс TComponent, поэтому и не появляется информации о процедуре... Цитата Подскажите, как заблокировать работу приложения, когда светится модальное окно с сообщением Работа прекращается и так ![]() -------------------- Главное - чтобы воля была, к победе...
|
NetAnton |
![]()
Сообщение
#4
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 112 Пол: Мужской Репутация: ![]() ![]() ![]() |
первое. информация выдается в сообщении в HandleException, но не о процедуре, где возникло исключение, а о кнопке, нажатие на которой вызвало процедуру.
второе. работа не прекращается. хоть и появляется MessageBox, таймер себе свободно тикает, и если ошибка находится где-то в его коде, исключения выскакивают каждый миг. юзерам это не понравится. впрочем, и с первым и вторым я разобрался. удовлетворен. Krutoy, спасибо. -------------------- Я люблю этот форум!
|
KRUTOY |
![]()
Сообщение
#5
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 68 Пол: Мужской Репутация: ![]() ![]() ![]() |
расскажи как??
может код приведёшь, вдруг мне пригодиться?? ![]() -------------------- Главное - чтобы воля была, к победе...
|
NetAnton |
![]()
Сообщение
#6
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 112 Пол: Мужской Репутация: ![]() ![]() ![]() |
Бросай мыло. я посмотрю, что там стоит твоего внимания ;)
-------------------- Я люблю этот форум!
|
KRUTOY |
![]()
Сообщение
#7
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 68 Пол: Мужской Репутация: ![]() ![]() ![]() |
fjodorow@list.ru
-------------------- Главное - чтобы воля была, к победе...
|
![]() ![]() |
![]() |
Текстовая версия | 20.06.2025 13:59 |