- •Содержание
- •Введение
- •Лабораторная работа № 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Создание Справочного файла
- •Теоретические сведения Создание справочной системы
- •Порядок выполнения работы
- •Контрольные вопросы
- •Библиографический список
Пример 15.5. Создан простой редактор содержащий меню. Экранная форма программы показана на рис. 15.7.
Рис. 15.7. Экранная форма примера 15.5
Обработка событий выбора пунктов меню имеет вид
{ Обработка меню ВИДПОКАЗАТЬ СООБЩЕНИЕ }
procedure TfrmMainMenu.DisplayMessage(Sender: TObject);
begin
muiMessage.Checked := not(muiMessage.Checked);
lblMessage.Visible := muiMessage.Checked;
end;
{ Обработка меню ВИД-ПОКАЗАТЬ РЕДАКТОР }
procedure TfrmMainMenu.DisplayEditor(Sender: TObject);
begin
muiEditor.Checked := not(muiEditor.Checked);
memEditor.Visible := muiEditor.Checked;
end;
{ Обработка меню СПРАВКА }
procedure TfrmMainMenu.AboutBox(Sender: TObject);
begin
Application.MessageBox('Это простой редактор, версия 0.01',
'О программе...', MB_OK);
end;
Всплывающее меню (tPopupMenu)
Компонент TPopupMenu появляется на экране, когда пользователь нажимает правую кнопку мыши на элементе управления, с которым оно ассоциировано. Чтобы связать с элементом управления всплывающее меню, нужно присвоить его свойству PopupMenu компонент типа TPopupMenu. Всплывающее меню, подобно главному меню, добавляется на форму во время разработки приложения в среде Delphi с помощью кнопки на стандартной панели инструментов и создается конструктором меню.
Пример 15.6. Создан простой редактор, содержащий главное и вплывающее меню. При нажатии правой кнопки мыши на форме появляется всплывающее меню, пункты которого совпадают с главным меню. Экранная форма программы показана на рис. 15.8.
Рис. 15.8. Экранная форма примера 15.6
Обработка событий выбора пунктов меню аналогична примеру 15.5 и имеет вид
procedure TfrmPopupMenu.DisplayMessage(Sender: TObject);
begin
muiMessage.Checked := not(muiMessage.Checked);
pmiMessage.Checked := muiMessage.Checked;
lblMessage.Visible := muiMessage.Checked;
end;
procedure TfrmPopupMenu.DisplayEditor(Sender: TObject);
begin
muiEditor.Checked := not(muiEditor.Checked);
pmiEditor.Checked := muiEditor.Checked;
memEditor.Visible := muiEditor.Checked;
end;
procedure TfrmPopupMenu.AboutBox(Sender: TObject);
begin
Application.MessageBox('Это простой редактор, версия 0.02',
'О программе...', MB_OK);
end;
Так как обработка событий главного и всплывающего меню одинакова, то централизовать действия можно с помощью списка действий (см. пример 15. 4) или же, выбрав один и тот же метод для обработки событий выбора пункта меню (OnClick) на совпадающих пунктах меню.
Порядок выполнения работы
Для решения задачи табулирования функции согласно варианту создать форму и разместить на ней:
главное меню (компонент типа TMainMenu) с командами: завершить работу программы, табулировать функцию, очистить поле вывода результатов;
контекстное меню (компонент типа TPopupMenu);
группу переключателей, с помощью которых задать способ вывода результатов (на экран, в файл, в массив), если не один из способов не выбран меню «Табулирование» не должно быть доступным.
поля ввода исходных данных;
область просмотра (компонент типа TMemo), которая должна снабжаться вертикальной полосой прокрутки и служить только для вывода информации.
В поля ввода допустимо вводить только цифры и точку, все остальные символы не должны водиться. Поле вывода не должно быть доступно для редактирования. Следует обработать все возможные исключительные ситуации. Возможный вид главной формы показан на рис. 15.9.
Рис. 15.9. Вид формы лабораторной работы №15