Воскресенье, 24.11.2024, 11:02
Вы вошли как Гость | Группа "Не зарегистрированный"Приветствую Вас Гость | RSS
Главная | Каталог статей | Мой профиль | Регистрация | Выход | Вход
QO.DO.AM
 >>>мир предметника 050202

Форма входа

Основное меню

Меню 050202

Учительская OnLine

Категории раздела
Описание Delphi 7 [200]
От теории к практике
Задачи [61]

Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0
// Your SEO optimized title page contents

Счетчики

Главная » Архив Информатики и ИКТ » Delphi 7 » Описание Delphi 7 [ Добавить статью ]

Ошибки времени выполнения

Ошибки времени выполнения

Во время работы приложения могут возникать ошибки, которые называются ошибками времени выполнения (run-time errors) илиисключениями (exceptions). В большинстве случаев причинами исключений являются неверные исходные данные. Например, если во время работы программы вычисления скорости бега в поле Время ввести 3.20, т.е. для отделения дробной части числа от целой использовать точку, то в результате нажатия кнопки Вычислить на экране появится окно с сообщением об ошибке (рис. В42).

Рис. В42. Пример ошибки времени выполнения (программа запущена из Windows)

Причина возникновения ошибки заключается в следующем. В тексте программы дробная часть числа от целой отделяется точкой. При вводе исходных данных в поле редактирования пользователь может (если не предпринять никаких дополнительных усилий) отделить дробную часть числа от целой точкой или запятой. Какой из этих двух символов является допустимым, зависит от настройки Windows.

Если в настройке Windows указано, что разделитель целой и дробной частей числа — запятая (для России это стандартная установка), а пользователь во время работы программы введет в поле редактирования, например, строку 3.20, то при выполнении инструкции

t = StrToFloat(Edit2.Text)

возникнет исключение, т. к. при стандартной для России настройке Windows содержимое поля Edit2 и, следовательно, аргумент функции strToFloat не являются изображением дробного числа.

Если программа запущена из среды разработки, то при возникновении исключения выполнение программы приостанавливается, и на экране появляется окно с сообщением об ошибке и ее типе. В качестве примера на рис. В43 приведено окно с сообщением о том, что введенная пользователем строка не является дробным числом.

Рис. В43. Пример сообщения о возникновении исключения (программа запущена из Delphi) После нажатия кнопки ОК программист может продолжить выполнение программы (для этого надо из меню Run выбрать командуStep Over) или прервать выполнение программы. В последнем случае нужно из меню Run выбрать команду Program Reset. При разработке программы программист должен постараться предусмотреть все возможные варианты некорректных действий пользователя, которые могут привести к возникновению ошибок времени выполнения (исключения), и обеспечить способы защиты от них. В листинге В5 приведена версия программы Скорость бега, в которой реализована защита от некоторых некорректных действий пользователя, в частности, программа.позволяет вводить в поле Дистанция (Editl) только цифры.

Рис. В43. Пример сообщения о возникновении исключения (программа запущена из Delphi)

После нажатия кнопки ОК программист может продолжить выполнение программы (для этого надо из меню Run выбрать командуStep Over) или прервать выполнение программы. В последнем случае нужно из меню Run выбрать команду Program Reset.

При разработке программы программист должен постараться предусмотреть все возможные варианты некорректных действий пользователя, которые могут привести к возникновению ошибок времени выполнения (исключения), и обеспечить способы защиты от них.

В листинге В5 приведена версия программы Скорость бега, в которой реализована защита от некоторых некорректных действий пользователя, в частности, программа.позволяет вводить в поле Дистанция (Editl) только цифры.



Источник: http://qo.do.am/index/teorija_po_programirovaniju/0-47
Категория: Описание Delphi 7 | Добавил: metalworker (27.04.2013)
Просмотров: 1136 | Теги: коды, Delphi 7 помощь, работа, form, Borland Delphi 7
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]


qo.do.am © 2024