Тема 5. Изменение значений свойств объектов. Использование окон сообщения.
Теория, повторение:
Любая программа в своей работе использует какие-то исходные данные.
Для организации ввода данных можно использовать:
-
-
-
- компонент формы Edit (поле ввода). Текст, который находится в поле, является значением его свойства Text. Текст в него можно не только вводить, но и редактировать. Ввод данных в текстовое поле заканчивается нажатием клавиши Enter;
-
-
- встроенное окно диалога Inputbox.
Для вывода результатов:
- свойство Caption компонента формы Label (поле вывода) применяется не только для создания надписей на форме а и для вывода данных;
- другой способ организации вывода данных - окна диалога Showmessage, MessageDlg.
Эти диалоговые окна не устанавливаются программистом на форму во время разработки. Операторы их активации нужно вставлять в код.
Рассмотрим способы ввода/вывода информации при разработке проекта с использованием системных окон сообщений.
I. Ввод данных. Системная функция InputBox()
Для ввода данных пользователем через системное окно применяют системную функцию InputBox().
Структура окна:
InputBox ( 'Заголовок', 'Подсказка', 'Значение по умолчанию');
В результате выполнения команды присваивания, содержащей такую функцию, на экран будет выводиться окно ввода, например:
II. Вывод данных. Окна сообщений MessageDlg
Команда вызова окна MessageDlg
Для вывода данных в отдельном окне в среде программирования Lazarus можно воспользоваться:
a). командой вызова окна MessageDlg, которая имеет следующую структуру:
MessageDlg (‘сообщение’, тип окна сообщения, [список кнопок], справка)
где:
сообщение - текст, который будет отображаться в окне сообщения;
тип окна сообщения - определяет внешний вид окна;
1. mtInformation (информационное),
2. mtWarning (предупредительное),
3. mtError (сообщение об ошибке),
4. mtConfirmation (запрос на подтверждение),
5. mtCustom (обычное).
список кнопок - список данных, представленных через запятую, которые определяют тип кнопок (не обязателен параметр)
справка - номер окна справочной системы, которое будет выведено на экран, если нажать клавишу F1. если значение этого параметра равно нулю, то использование справки отменено
b) . также командой вызова окна сообщений ShowMessage
Структура окна: ShowMessage(‘текст’) (англ. show message - показать сообщение).
По этой команде открывается специальное окно вывода сообщения, в котором выводится текст, указанный в команде.
Практическая работа.
Задание. Создать проект, в котором для ввода/вывода данных применить окна сообщения.
За основу возьмем проект projekt_vizitka2 и внесем изменения согласно заданию.
- Создадим папку в которую скопируем проект projekt_vizitka2 .Изменим имя проекта - projekt_vizitka3
- Выполним запуск среды Lazarus.Командой Проект – Открыть проект запустим проект на изменения.
3. В процедуру procedure TForm1.Button1Click(Sender: TObject) внесем следующие изменения:
Итог:
Дополнение: if (edit1.text<>'')and (edit2.text<>'') and (edit3.text<>'')and (edit4.text<>'')then
ShowMessage('Спасибо, ввод данных выполнен.')
else ShowMessage('Ввод данных не выполнен!');
4. В процедуре procedure TForm1.Button2Click(Sender: TObject) будем использовать метод Clear() для удаления информации с полей ввода Edit1,2,3,4 , метод setFocus передает фокус ввода текстовому полю: Edit1, методы Hide и Show:
Итог:
5. Дополняем обработчик события щелчка мышки на кнопке Button3 командой вызова окна сообщения MessageDlg
Итог: