- •Содержание
- •Введение
- •Лабораторная работа № 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Создание Справочного файла
- •Теоретические сведения Создание справочной системы
- •Порядок выполнения работы
- •Контрольные вопросы
- •Библиографический список
Панель tGroupBox (группы компонентов)
Компонент TGroupBox используют для размещения на панели группы из нескольких компонентов и улучшения дизайна окна приложения. Группа компонентов помещается в форму с помощью кнопки на стандартной панели инструментов. Свойства этого компонента аналогичны описанным ранее.
Пример 15.3. С помощью флажков выбирают продукты из списка и по нажатию кнопки в многострочный редактор выводятся эти названия. Экранная форма программы показана на рис. 15.3.
Обработка события имеет вид:
procedure TFrmEx1.BtnResultClick(Sender: TObject);
var pr:boolean;
str:string;
begin
pr:=false;
MemResult.Clear;
str:='Выбраны следующие продукты: ';
if ChBBird.Checked then
begin
pr:=true;
str:=str+'птица, ';
end;
if ChBFish.Checked then
begin
pr:=true;
str:=str+'рыба, ';
end;
if ChBFruits.Checked then
begin
pr:=true;
str:=str+'фрукты, ';
end;
if ChBMeat.Checked then
begin
pr:=true;
str:=str+'мясо, ';
end;
if ChBMilk.Checked then
begin
pr:=true;
str:=str+'молоко, ';
end;
if ChBVegetables.Checked then
begin
pr:=true;
str:=str+'овощи, ';
end;
Delete(str,length(str)-1,2);
str:=str+'.';
if not(pr) then str:='Продукты не выбраны.';
MemResult.Lines.Add(str);
end;
Рис. 15.3. Вид формы примера 15.3
Список действий (tActionList)
Компонент TActionList позволяет централизировать реакцию программы на действия пользователя (события), выполняемые с разными компонентами. Во время разработки программист определяет действия в редакторе списка действий (рис. 15.4). Затем эти действия подключаются к клиентским элементам управления посредством свойства Action этих элементов. Клиентский элемент управления генерирует действие в ответ на событие, например нажатие кнопки мыши. Клиентами списка действий обычно служат пункты меню или кнопки.
Рис. 15.4. Редактор списка действий
Список действий размещается на форме с помощью кнопки на стандартной панели инструментов. Для открытия редактора списка действий нужно дважды нажать мышью на этом компоненте. В редакторе можно добавлять, удалять и переставлять действия.
Свойства каждого действия устанавливаются в инспекторе объектов. Свойство Name идентифицирует действие. Другие свойства соответствуют свойствам клиентских элементов управления и обычно имеют те же имена. Компонент TActionList видим только во время разработки, а во время выполнения программы на форме он не появляется.
Пример 15.4. При нажатии левой и правой кнопки формы увеличивают показания счетчика и информация о его текущем состоянии выводится в многострочный редактор. Экранная форма программы показана на рис. 15.5. Обработка событий, происходящих при нажатии левой и правой кнопок, одинакова и имеет вид
var k:integer=0;
procedure TFrmAction.actClickedBtnExecute(Sender: TObject);
begin
inc(k);
MemOut.Lines.Add('Вы щелкнули на кнопке всего '+inttostr(k)+' раз.');
end;
Рис. 15.5. Экранная форма примера 15.4
Главное меню (tMainMenu)
Компонент TMainMenu создает в среде Delphi главное меню формы. Элемент управления состоит из строки меню и ассоциированных с его пунктами раскрывающих меню, которые содержат дополнительные пункты TMenuItem.
Главное меню размещается на форме с помощью кнопки на стандартной панели инструментов. Для создания и изменения меню в процессе разработки приложения предназначен Конструктор меню (Menu Designer), который вызывается контекстным меню компонента TMainMenu или двойным нажатием мыши на этом компоненте. При работе с конструктором используются команды его контекстного меню (рис. 15.6). С их помощью можно добавить (Insert) и удалить (Delete) пункт меню, создать подменю (Create SubMenu), выбрать меню (Select Menu), сохранить его как шаблон (Save As Template), вставить меню из шаблона (Insert From Template), удалить шаблоны (Delete Templates), вставить меню из файла ресурса (Insert From Resource).
Рис. 15.6. Конструктор меню