- •Содержание
- •Введение
- •Лабораторная работа № 13 Создание простых форм. Программирование кнопок
- •Теоретические сведения Назначение и состав окон для визуальной разработки по в Delphi 7
- •Объект tForm(форма)
- •Объект tLabel (текстовое поле)
- •Объект tButton (кнопка)
- •Преобразование типов
- •Метод установления фокуса
- •Порядок выполнения работы
- •Варианты
- •Контрольные вопросы
- •Лабораторная работа № 14 Интерактивный ввод и вывод. Обработка исключительных ситуаций
- •Теоретические сведения Компонент tEdit (поле редактирования)
- •Компонент tRadioButton (переключатель)
- •Пример 14.1. При нажатии на кнопки «Ответ» в окне появляется строка, соответствующая выбранному переключателю (рис. 14.1)
- •Обработка события, вызванного нажатием на кнопку, имеет такой вид:
- •Процедуры и функции, реализующие диалоговые окна
- •Обработчики исключений
- •Пример 14.2. Вычислить значение функции . Экранная форма программы показана на рис. 14.5.
- •Порядок выполнения работы
- •Варианты
- •Контрольные вопросы
- •Лабораторная работа № 15 Программирование циклов. Компоненты: флажок, группа компонентов, главное меню, контекстное меню, список действий, область просмотра
- •Теоретические сведения Компонент tMemo (область просмотра)
- •Пример 15.1. В многострочный редактор при нажатии кнопки выводятся номера строк. Экранная форма программы показана на рис. 15.1.
- •Компонент tCheckBox (флажок)
- •Пример 15.2. Флажками отмечаются используемые кредитные карточки и по нажатию кнопки в многострочный редактор выводятся эти названия. Экранная форма программы показана на рис. 15.2.
- •Панель tGroupBox (группы компонентов)
- •Пример 15.3. С помощью флажков выбирают продукты из списка и по нажатию кнопки в многострочный редактор выводятся эти названия. Экранная форма программы показана на рис. 15.3.
- •Список действий (tActionList)
- •Главное меню (tMainMenu)
- •Пример 15.5. Создан простой редактор содержащий меню. Экранная форма программы показана на рис. 15.7.
- •Обработка событий выбора пунктов меню имеет вид
- •Всплывающее меню (tPopupMenu)
- •Обработка событий выбора пунктов меню аналогична примеру 15.5 и имеет вид
- •Варианты
- •Контрольные вопросы
- •Лабораторная работа № 16Обработка динамических массивов данных. КомпонентTStringGrid(Таблица строк)
- •Теоретические сведения Компонент tStringGrid (таблица строк)
- •Implementation
- •Порядок выполнения работы
- •Варианты
- •Контрольные вопросы
- •Лабораторная работа № 17Работа с объектами. Инкапсуляция. Наследование. Полиморфизм. Создание заставки
- •Теоретические сведения Понятие класса и объекта
- •Инкапсуляция и свойства объекта
- •Наследование
- •Полиморфизм и виртуальныеметоды
- •Директивы, используемые при объявлении класса
- •Порядок выполнения работы
- •Варианты
- •Контрольные вопросы
- •Лабораторная работа № 18Компоненты для работы с файлами и каталогами
- •Теоретические сведения Компоненты для работы с файлами и каталогами
- •Выбор дисковода
- •Просмотр и перемещение по дереву каталогов
- •Просмотр списка и выбор имени файла
- •Выбор маски для списка файлов
- •Порядок выполнения работы
- •Контрольные вопросы
- •Лабораторная работа № 19Создание многооконных приложений (mdi). Строка Состояний
- •Теоретические сведения Компонент tStatusBar(строка состояний)
- •Многооконные приложения
- •Порядок выполнения работы
- •Варианты
- •Контрольные вопросы
- •Лабораторная работа № 20КомпонентTChart для Построение диаграмм различных типов. Создание библиотек динамической компоновки (Dll). Статическое подключение Dll
- •Теоретические сведения Компонент tChart (диаграмма)
- •Пример 20. 1. Построить график функции с шагом 0.1 в интервале [-5;5]. Экранная форма программы показана на рис. 20.2. Приведем фрагмент кода программы с обработкой основных событий:
- •Implementation
- •Создание библиотеки динамической компоновки (dll)
- •Пример 20. 2. Создать библиотеку содержащую функции сложения целых и вещественных чисел, а также строк. Код библиотеки имеет вид
- •Статический вызов библиотеки
- •Пример 20.3. Используем статически функции, описанные в библиотеке (см. Пример 20.2). Экранная форма программы показана на рис. 20.5. Фрагмент кода с использованием функций из библиотеки:
- •Implementation
- •Порядок выполнения работы
- •Контрольные вопросы
- •Лабораторная работа № 21Использование форм в библиотеках динамической компоновки (Dll). Динамическое подключение Dll.
- •Теоретические сведения Динамический вызов библиотеки
- •Implementation
- •Использование форм в библиотеках
- •Порядок выполнения работы
- •Варианты
- •Контрольные вопросы
- •Домашнее задание № 6Компоненты: Поля редактирования, группа переключателей. Обработка событий клавиатуры
- •Теоретические сведения Компонент группа переключателей (tRadioGroup)
- •События клавиатуры
- •Порядок выполнения работы
- •Варианты:
- •Контрольные вопросы
- •Домашнее задание № 7Создание Справочного файла
- •Теоретические сведения Создание справочной системы
- •Порядок выполнения работы
- •Контрольные вопросы
- •Библиографический список
Пример 14.2. Вычислить значение функции . Экранная форма программы показана на рис. 14.5.
Рис. 14. 5. Вид формы в примере вычисления функции с обработкой исключительных ситуаций
Вычисление функции и обработка возможных исключений происходят при нажатии кнопки . Обработка этого события имеет вид:
procedure TFrm.BtnResultClick(Sender: TObject);
var y:real;
begin
try
y:=sqrt(StrToFloat(EdtX.Text))/StrToFloat(Edtb.Text);
EdtY.Text:=FloatToStr(y);
except
on EZeroDivide do
MessageDlg('Ошибка. Деление на 0!!!',mtError,[mbCancel],0);
on EMathError do
MessageDlg('Ошибка. Корень от отрицательного числа не существует!!!',mtError,[mbCancel],0)
else
MessageDlg('Ошибка!!!',mtError,[mbCancel],0);
end;
end;
При вычислении функции возможны исключения: деление на ноль, корень от отрицательного числа и ошибка, связанная с преобразованием символов в число. Эти исключения обрабатываются в блоке try…except, а соответствующие окна с сообщениями изображены на рис. 14.6.
Рис.
14.6. Экранные формы с сообщениями об
ошибках в исключительных ситуациях
Порядок выполнения работы
Создать форму без заголовка. Разместить на форме:
текстовые поля с указанием номера лабораторной работы, номера варианта и постановкой задачи;
поля ввода исходных данных. Поля ввода должны снабжаться подсказками;
кнопки «Вычислить» и «Выход». При нажатии кнопки «Вычислить» должно вычисляться выражение согласно варианту (табл. 14.1) с выводом результата в поле редактирования, которое не должно быть доступно для ввода. При нажатии кнопки «Выход» должно закрываться окно программы;
переключатели, определяющие выполнять контроль исключительных ситуаций или нет.
При выполнении обработки исключительных ситуаций выводить соответствующие диалоговые окна.
Возможный вид главной формы и диалоговых окон показаны на рис. 14.7.
Рис. 14.7. Пример экранных форм для лабораторной работы №14
Варианты
Таблица 14.1. Функции для вычисления
Номер варианта |
Арифметическое выражение |
Номер варианта |
Арифметическое выражение |
1 |
2 | ||
3 |
4 | ||
5 |
6 | ||
7 |
8 |
Продолжение табл. 14.1.
Номер варианта |
Арифметическое выражение |
Номер варианта |
Арифметическое выражение |
9 |
10 | ||
11 |
12 | ||
13 |
14 | ||
15 |
16 | ||
17 |
18 | ||
19 |
20 | ||
21 |
22 | ||
23 |
24 |
Окончание табл. 14.1.
Номер варианта |
Арифметическое выражение |
Номер варианта |
Арифметическое выражение |
25 |
26 | ||
27 |
28 | ||
29 |
30 |
Контрольные вопросы
Компонент TEdit. Основные свойства.
Встроенные процедуры вывода диалоговых окон.
Обработка исключительных ситуаций.
Обработка исключений во вложенных подпрограммах
Лабораторная работа № 15 Программирование циклов. Компоненты: флажок, группа компонентов, главное меню, контекстное меню, список действий, область просмотра
Цель работы: изучение компонентов TCheckBox, TGroupBox, TMainMenu, TPopupMenu, TActionList, TMemo и их основных свойств.