Автор работы: Пользователь скрыл имя, 23 Февраля 2011 в 07:41, лабораторная работа
. Цель работы
Ознакомление со средой визуального программирования Delphi и разра-
ботка в ней простейших приложений.
4. Выберите пункт меню File/New Application, этим вы создадите новый
проект приложения.
5. Выберите команду File/Save Project As…
♦ В появившемся диалоге
выбрав соответствующий пункт в выпадающем списке вверху окна.
♦ Откройте папку,
мер, Р-123). Если такой нет, то создайте её, щелкнув правой кнопкой
мыши на свободном месте,
меню пункт Создать/папку и введя нужное название (после чего не
забудьте её открыть).
♦ Создайте (как описано в предыдущем пункте) папку "Ваша_фамилия
Lab1".
♦ Сохраните Unit1.pas под новым именем Main.pas, а Project1.dpr под
новым именем Lab1.dpr.
6. Выберите из политры Standard визуальных компонентов и поместите в
форму следующие компоненты:
♦ Окно редактирования со связанной с ним меткой Operand 1. В этом
окне вводится первый операнд.
♦ Окно редактирования со связанной с ним меткой Operator. В этом
окне вводится операция. В программе следует предусмотреть опе-
рации +, -, / и * .
♦ Окно редактирования со связанной с ним меткой Operand 2. В этом
окне вводится второй операнд.
♦
Окно редактирования со
не отображается результат
Пример простого калькулятора приведен
на рис.1.1.
1. В событиях OnClick каждой кнопки
опишите соответствующие дей-
ствия, например, для кнопки код события должен выглядеть
следующим образом:
If Edit2.Text='0' Then ShowMessage('Знаменатель равен "0"!')
Else
Edit3.Text:=FloatToStr(
Обратите внимание, что в данном действии осуществляется проверка
деления на ноль. Оператор ShowMessage выдает сообщение, представленное
на рис.
1.2 в случае, когда Y равен "0".
Рис. 1.1. Пример формы калькулятора
Рис. 1.2. Сообщение об ошибке
Процедуры FloatToStr и StrToFloat выполняют преобразования из число-
вой
переменной в строковую и из
строковой в числовую
Остальные клавиши должны быть описаны соответственно.
2. Измените программу, дополнив
ее возможностями очистки
жимого полей (например, кнопка Clear) и вычисления значения за-
данной функции, согласно
3. Сохраните форму и проект.
5. Варианты
индивидуальных заданий
1.
Создайте кнопку для
2.
Создайте кнопку для
3.
Создайте кнопку для
4.
Создайте кнопку для
поле Y копируйте значение X.
5.
Создайте кнопку для
6.
Создайте кнопку для возведения
X в целочисленную степеньY.
6. Результаты
работы
В результате выполнения
монстрировать преподавателю
мы и исходный код модуля.
ЛАБОРАТОРНАЯ РАБОТА № 2
Обработка
исключительных ситуаций в
пользователя
1. Цель работы
Ознакомление с классом
приложений,
генерирующих исключения и
кусы
ввода.
2. Домашнее задание
Изучить разделы 5 и 6 конспекта лекций, ознакомиться с описанием
и заданием
на лабораторную работу.
3. Основные понятия и приемы
3.1. Обработка исключений
На этапе выполнения Delphi порождает исключения, когда какой-
либо процесс идет неправильно. Если код вашей подпрограммы написан со-
ответствующим образом, он может распознать возникшую проблему и по-
пытаться ее решить; в противном случае исключение передается в код, ко-
торый вызвал вашу подпрограмму и т.д. В конечном счете, если никто не
обработал исключение, его обрабатывает Delphi, выводя на экран стан-
дартное сообщение об ошибке и пытаясь продолжить выполнение програм-
мы.
Весь механизм строится на четырех ключевых словах:
try
– определяет начало
except
– определяет конец
обработки
исключений в следующем виде:
on (тип исключения) do (оператор)
finally
– указывает необязательный
вобождения ресурсов, распределенных в блоке try перед обработкой ис-
ключения;
этот блок завершается
raise – оператор, используемый для порождения исключений. Большин-
ство исключений, которые вы встретите при программировании на Del-
phi, будут порождаться системой, но вы также можете создать их в соб-
ственном коде, когда во время выполнения обнаружатся недопустимые
или несогласованные данные. Кроме того, ключевое слово raise можно
использовать
внутри обработчика для
ния,
т.е. для передачи его
Если вы хотите, чтобы при правильной обработке исключений програм-
ма продолжала выполняться, отключите опцию отладки Break on Exception в
окне Environment
Options.
3.2. Предопределенные
обработчики исключительных
Ниже
Вы найдете справочную
ключениям,
необходимую для
Delphi.
• Exception - базовый класс-предок всех обработчиков исключитель-
ных ситуаций.
• EAbort - “скрытое” исключение. Используйте его тогда, когда хоти-
те прервать тот или иной процесс с условием, что пользователь про-
граммы не должен видеть
удобства использования в
Abort, определенная как:
procedure Abort;
begin
raise EAbort.CreateRes(
end;
• EComponentError - вызывается в двух ситуациях:
1) при попытке регистрации
ры Register;
2) когда имя компоненты не
• EConvertError - происходит в случае возникновения ошибки при
выполнении функций StrToInt и StrToFloat, когда конвертация стро-
ки в соответствующий числовой тип невозможна.
• EInOutError - происходит при ошибках ввода/вывода при включен-
ной директиве {$I+}.
• EIntError - предок исключений, случающихся при выполнении це-
лочисленных операций.
• EDivByZero - вызывается в случае деления на ноль, как результат
RunTime Error 200.
• EIntOverflow - вызывается при попытке выполнения операций, при-
водящих к переполнению целых переменных, как результат RunTime
Error 215 при включенной директиве {$Q+}.
• ERangeError - вызывается при попытке обращения к элементам
массива по индексу,
RunTime Error 201 при включенной директиве {$R+}.
• EInvalidCast - происходит при попытке приведения переменных од-
ного класса к другому классу, не совместимому с первым (например,
приведение переменной типа TListBox к TMemo).
• EInvalidGraphic - вызывается при попытке передачи в LoadFromFile
файла, несовместимого
• EInvalidGraphicOperation - вызывается при попытке выполнения
операций, неприменимых для данного графического формата (на-
пример, Resize для TIcon).
• EListError - вызывается при обращении к элементу наследника
TList по индексу, выходящему за пределы допустимых значений (на-