Федеральное агентство по образованию
Delphi. Страница Standard Учебно-методическое пособие для вузов (Практикум)
Соста...
27 downloads
324 Views
438KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Федеральное агентство по образованию
Delphi. Страница Standard Учебно-методическое пособие для вузов (Практикум)
Составители: В.В. Васильев Л.В. Хливненко
ВОРОНЕЖ 2007
2
Утверждено Научно-методическим советом Математического факультета 31 января 2007 года, протокол № 5
Рецензент В.Н. Донцов
Учебно-методическое пособие (практикум) подготовлен на кафедре математического моделирования математического факультета Воронежского государственного университета.
Рекомендовано для студентов 3-4 курсов всех форм обучения.
Для направления 010101 (010100) Математика
3
1. Постановка учебной задачи Разработка интерфейса проекта в Delphi похоже на игру с детским конструктором. Программист располагает большим запасом разных строительных кубиков – компонент, которые он по своему усмотрению располагает на игровом поле – форме. Сам процесс игры заключается в написании алгоритмов, описывающих реакции на различные события. В данной работе мы познакомимся с рядом компонент страницы Standard: Label - Метка (используется для создания надписей на форме). Edit – Текстовый редактор (поле предназначено для ввода текста и (или) отображения текста в одной строке). Memo - Многострочный текстовый редактор (позволяет вводить и (или) отображать текст в несколько строк). ListBox - Список выбора (состоит из списка опций и позволяет выбирать одну или несколько из них). ComboBox - Комбинированный список выбора (гибрид списка выбора и однострочного текстового редактора). Button - Командная кнопка (событие Onclick меняет эффект «выпуклости» на эффект «вдавленности»). Panel - Панель (служит для объединения компонент и позволяет создавать эффект объемности). GroupBox - Группа компонент (блок с рамкой, использующийся для объединения связанных по смыслу элементов). RadioButton - Радиокнопка (зависимый переключатель, обычно входящий в группу, из которой возможно выбрать только один из переключателей). RadioGroup - Группа зависимых переключателей (позволяет активизировать только один переключатель из группы). CheckBox- Флажок (независимый переключатель, даже при вхождении в группу способный всегда находиться во включенном и отключенном состоянии). ScrollBar – Полоса прокрутки (полоса управления, позволяющая писать обработчики, реагирующие на месторасположение бегунка). MainMenu - Главное меню формы (используется для создания иерархических меню). PopupMenu - Контекстное меню (вспомогательное меню, вызываемое по нажатию правой кнопки мыши). Знакомство с компонентами будем осуществлять в ходе работы над проектом. В окончательном варианте наш проект будет представлять собой форму «Ввод информации о новом сотруднике», изображенную на рис. 1. Проект будет продолжен в следующей лабораторной работе, в ходе которой будет создана вторая форма проекта. Порядок работы компонент формы
4
Рис. 1. Окно проекта. Вид после заполнения поля Должность и выбора из списка Отдела и Филиала, после выбора опций Белый фон поля и Жирный шрифт, после нажатия кнопок Отразить текст и Обновить данные, после вызова правым кликом контекстного меню формы. 1. Содержимое полей ввода Должность, Отдел и Филиал можно изменять, набирая текст в однострочном текстовом редакторе Должность, выбирая пункт из списка Отдел, выбирая вариант из комбинированного списка Филиал. После нажатия на кнопку Отразить текст в группе Сервис, содержимое всех полей ввода появится в поле Контроль ввода данных. При нажатии на кнопку Очистка текста текст в поле Контроль ввода данных будет удален. 2. Выбор одной из радиокнопок в группе Фон формы изменит цвет фона формы. То же произойдет, если перемещать указатель (бегунок) на полосе прокрутки. 3. В группе компонент Сервис выбор радиокнопки Белый фон поля позволяет выбирать белый цвет фона для многострочного текстового редактора Контроль ввода данных. Радиокнопка Салатовый фон поля задает соответствующий фон для элемента Контроль ввода данных. Выбор флажка Жирный шрифт определяет начертание текста всей формы, Фиолетовый цвет определяет цвет текста формы. Описанные настройки отображаются на экране после нажатия на кнопку Обновить данные. 4. В программе будет создано меню двух типов – главное и контекстное. В главном меню в верхней части экрана содержатся два пункта –Файл и Настройки. В пункте Файл имеется одна команда – Выход, при выборе которой работа программы заканчивается. То же происходит при нажатии на кнопку Выход в группе элементов Сервис. В пункте Настройки основного меню можно выбрать команды Отразить текст и Обновить данные. Они же составляют контекстное меню, которое появляется при нажатии на правую кнопку мыши в любом месте формы. Работа этих команд такая же, как и кнопок с соответствующим названием в группе Сервис. Приступим к реализации поставленной задачи. Создание проекта разобьем на четыре примера работы (соответственно пунктам порядка работы проекта – см. выше). 2. Компоненты Label, Edit, Memo, ListBox, ComboBox, Button, Panel, GroupBox
5
Создадим макет формы (см. рис. 2) и напишем обработчики для заполнения и очистки многострочного текстового поля Контроль ввода данных. Рис.2. Макет формы после выполнения примера работы 1. План примера 1 1-4. Создание проекта и работа со свойствами формы. 5-10. Оформление заголовка формы как компонента Panel. 11-14. Работа с компонентом Label. 15-17. Изменение свойств однострочного текстового редактора Edit. 18-25. Работа со свойствами списков ListBox и ComboBox. 26-28. Добавление многострочного текстового редактора Memo. 29-30. Размещение группы компонент GroupBox. 31-34. Добавление в GroupBox дочерних командных кнопок Button1-4. 35-37. Написание обработчиков событий OnClick кнопок Button1,3,4. 38-39. Проверка работы программы. Пример работы 1: Подсказка 1. Войдите в Delphi Пуск|Программы|Delphi 2. Сохраните форму в новую папку в своем каталоге под File|Save Project As... именем Unit1, а проект – под именем Standard 3. Измените название формы на Компоненты заклад- Свойство Caption ки Standard 4. Измените идентификатор формы на StandardTab Свойство Name
Для заголовка формы воспользуемся компонентом Panel, поскольку его хорошо использовать для создания выглядящих объемно меток. Страница Standard 5. Положите на форму элемент Panel 6. Напишите на панели «Ввод информации о новом Свойство Caption сотруднике» 7. Измените выравнивание панели на форме Свойство Align 8. Подберите подходящий цвет и размер шрифта Группа свойств Font 9. Подберите подходящее начертаГруппа свойств Style в группе свойств ние для подписи на панели Font
Компонент Panel не имеет заголовка, как элемент GroupBox, и является объемным блоком общего назначения, в котором можно помещать как текст, так и другие элементы. Некоторые свойства компонента Panel: • BevelInner • BevelOuter
Стиль внутренней рамки (прямоугольника вокруг панели). Стиль внешней рамки (прямоугольника вокруг границы панели толщиной в 1 пиксел).
Указанные два свойства могут иметь одно из четырех значений: bvLowered (вдавленный бордюр), bvNone (нет бордюра), bvRaised (выпуклый бордюр) и bvSpace (стиль по умолчанию). • BevelWidth
Толщина рамок в пикселах..
6 • BorderStyle
Стиль границы (bsNone – нет границы, bsSingle – граница толщиной в 1 пиксел). Расстояние между внешней и внутренней рамками в пик• BorderWidth селах. Разрешение, либо запрет перерисовки панели и всех нахо• FullRepaint дящихся на ней элементов при изменении ее размеров. 10. Познакомьтесь со свойствами эле- См. список выше и справку по клавише F1 мента Panel
Добавим на форму компоненты Label, предназначенные для создания текстовых надписей. 11. Создайте на форме надпись Долж- Св-во Caption элемента Label ность Свойство Caption элемента Label 12. Создайте на форме надпись Отдел Свойство Caption элемента Label 13. Создайте на форме надпись Филиал
Некоторые свойства компонента Label: • AutoSize • Alignment • LayOut • Transparent • WordWrap
Разрешение, либо запрет изменение размеров метки в зависимости от помещенного в нее текста. Выравнивание текста в метке по горизонтали. Выравнивание текста в метке по вертикали. Прозрачность, либо закрашивание фона метки цветом Color. Разрешение, либо запрет разрыва строки на границе слова.
Чтобы написать в метке текст в несколько строк укажите AutoSize=False, а WordWrap=True. 14. Создайте на форме надпись Контроль ввода данных в две строки 15. Под метку Должность добавьте компонент Edit 16. Очистите содержимое компонента Edit
Установите значение нужных свойств, а затем уменьшите ширину и увеличьте длину метки См. страницу Standard Свойство Text
Элемент Edit позволяет вводить и отображать текст в одну строку. В Инспекторе Объектов присутствуют только те свойства, значения которых можно поменять при разработке интерфейса проекта. Если свойство получает свое значение в ходе работы программы (например, введенный текст для объекта Edit), то в Инспекторе объектов такого свойства не будет. Некоторые свойства компонента Edit:
7 • CharCase • • • •
Автоматическое преобразование букв (ecNormal – нет преобразования, ecUpperCase – заглавные буквы, ecLowerCase – строчные буквы). Максимальное количество символов в строке (при значеMaxLength нии 0 количество не ограничено). PasswordChar Символ, заменяющий набираемые символы в строке ввода. Разрешение, либо запрет изменения текста. ReadOnly Содержит выделенный текст. SetText
17. Познакомьтесь со свойствами См. список выше и справку по клавише F1 элемента Edit Страница Standard 18. Под метку Отдел добавьте компонент ListBox Компонент ListBox предоставляет пользователю список, из которого можно выбрать один или несколько элементов. В свойстве Items щелкните по кнопке с 19. Задайте элементы списка – тремя точками и в появившемся диалоговом Бухгалтерия окне запишите в столбик пункты списка. Дирекция Отдел кадров Для сохранения введенных данных нажмите Отдел маркетинга на кнопку Оk Отдел сбыта
Некоторые свойства компонента ListBox: Номер выбранного пункта (нумерация пунктов с нуля). • ItemIndex • MultiSelect Разрешение, либо запрет множественного выбора. Количество выбранных пунктов. • SelCount • Selected(n) Выбор, либо его отсутствие для n-го элемента списка. Разрешение, либо отмена сортировки слов по алфавиту. • Sorted Номер первого видимого в окне элемента. • TopIndex 20. Под метку Филиал добавьте компонент ComboBox
Компонент ComboBox представляет собой комбинацию элементов Edit и ListBox. Выбранный из списка пункт отображается в однострочном текстовом поле. Свойство Text 21. В поле списка укажите поясняющий текст - Список городов 22. Определите пункты списка – Воронеж В свойстве Items щелкните по кнопке с тремя точками и в появившемВерхний Мамон ся окне запишите в столбик вариБутурлиновка Лиски анты Ст.Оскол 23. Отсортируйте по алфавиту города в списке Значение True свойства Sorted 24. Сохраните результаты работы File|Save 25. Проверьте работу программы Run|Run
Научим наш проект отображать введенные пользователем данные в многострочном текстовом поле. 26. Под метку Контроль ввода данных добавьте компонент Memo
8
Компонент Memo используют для ввода или для отображения текста из нескольких строк. 27. Задайте 4 строки для отображения текста в компоненте Memo 28. Установите наличие полос прокрутки у многострочного поля Memo
В свойстве Lines щелкните по кнопке с тремя точками и в появившемся диалоговом окне удалите текст Memo1 и 4 раза нажмите Enter См. значения – ssBoth, ssHorizontal, ssVertical свойства ScrollBar
Большинство свойств компонента ComboBox заимствовано у элементов Edit и ListBox. Элемент GroupBox на странице Standard 29. Поместите на форму группу компонент Сервис Свойство Caption 30. Укажите подпись Сервис блока GroupBox
Компонент GroupBox представляет собой прямоугольную рамку с надписью. Компонент обычно содержит дочерние элементы, объединенные по смыслу. Добавим четыре командные кнопки в группу Сервис. 31. Добавьте в группу кнопку Отразить текст 32. Добавьте в группу кнопку Обновить данные 33. Добавьте в группу кнопку Очистить текст 34. Добавьте в группу кнопку Выход
Свойство Caption элемента Button Свойство Caption элемента Button Свойство Caption элемента Button Свойство Caption элемента Button.
Кнопки Button используются для выполнения программой определенных действий. Некоторые свойства компонента Button: • Cancel • Default
При значении True событие OnClick возникает при нажатии клавиши Esc. При значении True событие OnClick возникает при нажатии клавиши Enter.
Добавим обработчики событий OnClick для компонент Button нашей формы (для добавления Паскаль-кода нужно при выделенной кнопке перейти на вкладку Events инспектора объектов и дважды кликнуть справа от названия события). Обратите внимание на то, что при двойном щелчке в поле OnClick здесь и далее открывается окно, где заголовок необходимой программы-обработчика уже создан автоматически и требуется дописать лишь саму процедуру. Комментарии здесь и далее даны для ясности и при наборе Паскаль-кода необязательны. 35. Напиши- procedure TStandardTab.Button1Click(…); те код обра- begin ботки собы- {Очистить содержимое Memo1} Memo1.Clear; тия OnClick компонента {Добавить в Memo1 текст, введенный пользоватеButton1 – лем в свойство Text компонента Edit1} Memo1.Lines.Add(Edit1.Text); кнопки Отразить текст {Добавить в Memo1 выбранный пользователем эле-
9 мент массива Items списка ListBox1} Memo1.Lines.Add(ListBox1.Items[ListBox1.ItemIndex]);
{Добавить в Memo1 выбранный пользователем пункт списка ComboBox1} Memo1.Lines.Add(ComboBox1.Text); end; procedure TStandardTab.Button3Click(…); 36. Добавьте код обработки события begin {Очистить содержимое компонента Memo1} OnClick компонента Memo1.Clear; Button3 – кнопки end; Очистить текст procedure TStandardTab.Button4Click(…); 37. Напишите код обработки события begin {Закрыть форму} OnClick компонента Close; Button4 – кнопки end; Выход 38. Сохраните результаты работы File|Save 39. Проверьте работу программы Run|Run
3. Компоненты RadioButton, RadioGroup, CheckBox, ScrollBar В учебном проекте цвет формы будет изменяться в зависимости от выбора радиокнопки в группе Фон формы и в зависимости от положения указателя на полосе прокрутки. На рис. 3 показан макет формы после выполнения примера работы 2. Рис.3. Макет формы после выполнения примера работы 2. План примера 2 1-5. Создание группы RadioGroup1 переключателей Фон формы. 6-7. Написание обработчика OnClick компонента RadioGroup1. 8-10. Добавление компонента ScrollBar. 11-13. Создание и проверка обработчика OnChange элемента ScrollBar. Пример работы 2: Подсказка 1. Добавьте в форму компонент RadioGroup Страница Standard 2. Замените подпись с RadioGroup1 на Фон формы Свойство Caption 3. Задайте расположение радиокнопок в две колонки Свойство Columns 4. Укажите подписи для переключателей: В свойстве Items щелкните по кнопке с тремя точками и в пояСеребристый вившемся диалоговом окне запиГолубой Желтый шите в столбик цвета формы. Для Красный сохранения - нажмите Оk 5. Сделайте активной первую радиокнопку Свойство ItemIndex=0
Контейнер RadioGroup содержит список Items зависимых переключателей RadioButton, каждый из которых доступен по своему номеру. В группу обычно включают не менее двух зависимых переключателей. Свойство
10
Checked определяет выбрана радиокнопка или нет. Только у одного переключателя в группе свойство Checked имеет значение True, у всех остальных это значение равно False. Напишем обработчик, связывающий группу зависимых переключателей с изменением фона формы. 6. Напишите кодprocedure TStandardTab.RadioGroup1Click(…); begin обработки со{Если выбран определенный переключатель, форма бытия OnClick компонента Ra- меняет свой цвет} If RadioGroup1.ItemIndex=0 dioGroup1 – Then StandardTab.Color:=clSilver; группы зависиIf RadioGroup1.ItemIndex=1 мых переклюThen StandardTab.Color:=clAqua; чателей Фон If RadioGroup1.ItemIndex=2 формы Then StandardTab.Color:=clYellow; If RadioGroup1.ItemIndex=3 Then StandardTab.Color:=clRed; end; 7. Проверьте работу программы Run|Run
При выборе радиокнопки из радиогруппы Фон формы цвет фона формы должен изменятся. 8. Создайте на форме надпись Полоса Свойство Caption элемента Label прокрутки (фон) Страница Standard 9. Добавьте на форму элемент ScrollBar
Стандартная для Windows полоса прокрутки ScrollBar обычно используется для визуализации управления значением числовой величины. Некоторые свойства компонента ScrollBar: • Kind
Ориентация элемента (sbHorizontal - горизонтальная, SbVertical вертикальная). Максимальное значение диапазона изменения числовой величины. • Max Минимальное значение диапазона изменения числовой величины. • Min • Position Текущее значение числовой величины.
Свяжем добавленный компонент с номером фона формы. 10. Установите максимальное значение диапа- Свойство Max. Значение 3 зона изменения номера формы procedure TStandardTab.ScrollBar1Change(…); 11. Напишите код обработки события begin {Присвоить текущее значение указателя OnChange компоScrollBar1 номеру активной радиокнопки в групнента ScrollBar1 – полосы прокрутки пе RadioGroup1} RadioGroup1.ItemIndex:=ScrollBar1.Position; Фон end; 12. Сохраните результаты работы File|Save 13. Проверьте работу программы Run|Run
Ожидаемый результат при выполнении программы – это изменение цвета фона формы при передвижении ползунка-индикатора скроллинга.
11
В примере работы 3 мы полностью оформим группу элементов Сервис, добавив в нее две радиокнопки, управляющие фоном компонента Memo1 и два флажка, влияющих на начертание и цвет текста полей формы. Макет формы, после выполнения примера работы 3, показан на рис.4. План примера 3 1-4. Добавление в группу Сервис по два зависимых и независимых переключателя. 5-7. Создание обработчика события OnClick элемента Button2. Пример работы 3: Подсказка 1. Добавьте в форму два компонента RadioButton 2. Измените подписи на Белый фон поля и Салатовый фон поля 3. Добавьте в форму два компонента CheckBox 4. Измените подписи на Фиолетовый цвет и Жирный шрифт.
Страница Standard Свойство Caption Страница Standard. Свойство Caption.
Рис.4. Макет формы после выполнения примера работы 3. Независимый переключатель CheckBox позволяет пользователю объявить свое решение типа да-нет или да-нет-не знаю. Если форма содержит несколько компонентов CheckBox, то состояние каждого из них никак не связано с состояниями остальных.
Некоторые свойства компонента CheckBox: • Alignment Положение текста (taLeftJustify – слева, taRightJustify – справа). Разрешение либо запрет использования состояния Не • AllowGrayed знаю. Выбор флажка в схеме да-нет (True – да, False - нет). • Checked • State
Выбор пользователя в схеме да-нет-не знаю (cbChecked - да, cbGrayed – не знаю, cbUnchecked - нет).
Напишем обработчик события OnClick для кнопки Обновить данные, изменяющий фон поля Memo1 и вид текста формы в зависимости от состояния добавленных на форму радиокнопок и флажков. 5. Напишите procedure TStandardTab.Button2Click(…); begin код обра{Если флажок Фиолетовый цвет выбран, то основной цвет текботки события OnClick ста формы изменить на фиолетовый, в противном случае – на черный} компонента if CheckBox1.State=cbChecked Button2. then StandardTab.Font.Color:=clPurple Для этого else StandardTab.Font.Color:=clBlack; выделите {Если флажок Жирный текст выбран, то начертание текста Button2 и перейдите на формы изменить на полужирное, в противном случае – на обычвкладку ное} if CheckBox2.State=cbChecked Events в Ин-
12 спекторе объектов. Дважды кликните справа от OnClick
then StandardTab.Font.Style:=[fsBold] else StandardTab.Font.Style:=[]; {Если радиокнопка Белый фон поля активна, то цвет фона компонента Memo1 установить белым} if RadioButton1.Checked then Memo1.Color:=clWhite; {Если радиокнопка Салатовый фон поля активна, то цвет фона компонента Memo1 установить салатовым} if RadioButton2.Checked then Memo1.Color:=clLime; end;
6. Сохраните результаты работы File|Save 7. Проверьте работу программы F9 На данном этапе в зависимости от выбранной Вами комбинации активных флажков и радиокнопок должен меняться вид оформления полей формы после нажатия на кнопку Обновить данные. 4. Компоненты MainMenu и PopupMenu Чтобы завершить создание проекта в данной лабораторной работе нам осталось сделать главное меню формы и контекстное меню, появляющееся по нажатию правой кнопки мыши на форме. План примера 4 1-8. Создание главного меню формы – работа с компонентом MainMenu. 9-15. Указание кода обработки выбора пунктов главного меню. 16-19. Составление всплывающего меню формы – компонент PopupMenu. 20-26. Копирование кода обработки выбора команд всплывающего меню формы. Пример работы 4: Подсказка 1. Добавьте в форму невизуальный компонент MainMenu Страница Standard
Компонент MainMenu невидимый, поэтому совершенно все равно, где его разместить. Удобно поместить его в какой-нибудь угол, чтобы при добавлении новых визуальных компонент формы он Вам не мешал. MainMenu задает главное меню формы. Если добавить на форму несколько компонентов MainMenu, то в верхней части формы мы увидим только тот, который указан в свойстве Menu формы. Посмотрите, это свойство автоматически получило значение MainMenu1. Сформируем главное меню формы, состоящее из двух пунктов - Файл с командой Выход и Настройки с командами Отразить текст и Обновить данные. 2. Откройте конструктор Клик по кнопке с тремя точками в свойстве Items, лименю – Menu Designer бо выбор пункта Menu Designer из контекстного меню компонента MainMenu1 формы 3. Напишите название первого Впишите в свойство Caption значение &Файл и пункта меню – Файл нажмите Enter
13
Знак & сообщает Delphi, что следующую за ним букву надо показать подчеркнутой и включить ее в комбинацию быстрой клавиши, соответствующую данному пункту меню. При запуске на исполнение учебного проекта нажатие клавиш Alt и Ф приведет к открытию пункта меню Файл. Попробуйте! После добавления в меню пункта Файл справа и снизу от него появляются окна. В них можно добавить следующий пункт меню. Для этого можно щелкнуть в нужном окне мышью и изменить свойство Caption в Инспекторе объектов. 4. Укажите в пункте меню Файл команду Выход 5. Задайте пункт меню Настройки
Щелкните под пунктом Файл. Впишите в свойство Caption значение &Выход и нажмите Enter Щелкните справа от пункта Файл. Впишите в свойство Caption значение &Настройки и нажмите Enter Для добавления команд в пункт меню Настройки нужно щелкнуть на
названии пункта. При этом откроется список имеющихся команд и появится возможность добавить новую. 6. Напишите в пункте меню Настройки команду Отразить текст См. п. 4 7. Добавьте разделитель после Введите дефис (-) в свойство Caption элепункта Отразить текст мента меню, следующего за Отразить текст 8. Напишите в пункте Настройки команду Обновить данные См. п. 4
После окончания построения меню, нужно закрыть окно конструктора меню. Пункты меню появятся на форме. Для создания ветвящихся меню( команды меню содержат выпадающие подменю) нужно в окне Menu Designer кликнуть по родительскому пункту, затем нажать Ctrl и стрелку вправо. Попробуйте! Чтобы добавить Паскаль-код для выбора пункта меню, нужно перейти по двойному клику на этом пункте на нужный участок кода, соответствующий процедуре обработки события выбора этого пункта. Попробуйте! Вместо того, чтобы повторно писать обработчики, мы их скопируем. 9. Вызовите код обработчика выбора Файл|Выход команды Выход пункта меню Файл 10. В качестве обработчика выбора ко- В Инспекторе объектов на вкладке Events откройте список справа от соманды Выход пункта меню Файл забытия OnClick и выберите Button4Click дайте обработчик события OnClick кнопки Выход 11. Проверьте работу программы. F9. Выйдите из программы, выбрав Файл|Выход 12. Для выбора команды Отразить текст В Инспекторе объектов на вкладке пункта меню Настройки задайте обра- Events откройте список справа от соботчик события OnClick кнопки Отра- бытия OnClick и выберите Button1Click зить текст 13. Проверьте работу программы F9. Заполните Memo1, выбрав Настройки |Отразить текст 14. Для выбора команды Обновить дан- В Инспекторе объектов на вкладке
14 ные пункта меню Настройки задайте обработчик события OnClick кнопки Обновить данные 15. Проверьте работу программы
Events откройте список справа от события OnClick и выберите Button2Click F9. Обновите вид полей, выбрав Настройки |Обновить данные
Добавьте на форму еще один невизуальный компонент PopupMenu, использующийся для создания всплывающего контекстного меню. Контекстное меню может быть создано для любого компонента формы. В нашем примере клик по самой форме будет приводить к появлению всплывающего меню с командами Отразить текст и Обновить данные. Страница Standard 16. Добавьте невизуальный компонент PopupMenu 17. Откройте конст- Клик по кнопке с тремя точками в свойстве Items, либо руктор меню – Menu выбор пункта Menu Designer из контекстного меню Designer компонента PopupMenu1 формы
Конструктор всплывающего меню работает точно так же, как конструктор главного меню, только все опции разворачиваются вниз в единственном окне. 18. Напишите первую команду контекстного меню – Отразить текст 19. Напишите вторую команду контекстного меню – Обновить данные
Впишите в свойство Caption значение Отразить текст и нажмите Enter Впишите в свойство Caption значение Обновить данные и нажмите Enter
Для добавления кода обработки какой-либо опции всплывающего меню необходимо выделить ее в конструкторе меню и дважды щелкнуть по ней. Откроется окно редактирования кода обработки выбора данного пункта и появится возможность набрать вручную необходимый код. Если необходимый код, как в нашем проекте, уже присутствует в обработке какого-либо другого события, то его можно скопировать так же, как мы делали при конструировании главного меню. Двойной клик 20. Вызовите код выбора команды Отразить текст контекстного меню В Инспекторе объектов на вкладке 21. Для выбора команды Отразить Events откройте список справа от сотекст контекстного меню задайте оббытия OnClick и выберите Button1Click работчик события OnClick кнопки Отразить текст Двойной клик 22. Вызовите код выбора команды Обновить данные контекстного меню В Инспекторе объектов на вкладке 23. Для выбора команды Обновить Events откройте список справа от соданные пункта меню Сервис задайте бытия OnClick и выберите Button2Click обработчик события OnClick кнопки Обновить данные Кликните в свободном месте формы. Из 24. Свяжите PopupMenu1 с контекстсписка правее свойства PopupMenu выным меню формы берите PopupMenu1 25. Проверьте работу программы F9. Проверьте работу контекстного меню формы! 26. Сохраните результаты работы File|Save
15
Проверьте работу всего проекта (см. рис. 1). После завершения работы над проектом посмотрите файлы в своем каталоге. Здесь можно обнаружить exe-файл Windows-приложения созданной программы. Файл озаглавлен так же, как проект, и имеет стандартную иконку .
Учебное издание
Delphi. Страница Standart
Учебное пособие для вузов (Практикум)
Составители: Васильев Валерий Викторович, Хливненко Любовь Владимировна Редактор
Бунина Т.Д.