- •Пример 1. Применение стандартных кнопок, меток и полей редактирования
- •Пример 2. Диалоговые окна
- •Пример 1. Радиокнопки
- •Текст файла Unit1.Pas
- •Пример 2. Использование компонента CheckBox
- •Текст файла Unit1.Pas
- •Пример 3. Калькулятор
- •Пример 1. Строка состояния
- •Пример 2. Системные диалоги. Загрузка текстового файла
- •Пример 3. Системные диалоги. Изменение параметров шрифта
- •Способ 2
- •Пример 2. Геометрические фигуры. Типы заливок
- •Пример 3. Построение графика функции на канве. Преобразование координат
- •Пример 1. Загрузка графических изображений
- •Пример 2. Компонент Timer
Пример 2. Диалоговые окна
Разработаем приложение, осуществляющее ввод и вывод информации с помощью диалоговых окон. В приложении будет 5 кнопок, при нажатии на одну их 4 первых кнопок будет появляться диалоговое окно, а при нажатии на последнюю кнопку приложение должно завершать свою работу.
В окне Object Inspector на вкладке Properties необходимо установить следующие значения для свойств формы:
Свойство |
Значение |
Caption |
Диалоговые окна |
Height |
75 |
Width |
537 |
Left |
300 |
Top |
200 |
Следует заметить, что такие свойства как Height, Width, Left, Topможно изменять, не используя окно Object Inspector. СвойстваHeight и Width можно изменить, наведя курсор мыши к краю формы, и когда он примет вид двусторонней чёрной стрелки, удерживая нажатой левую кнопку мыши, переместить мышь. Положение формы, т.е. свойства Left и Top, можно изменить, если навести курсор мыши к строке заголовка окна и, удерживая нажатой левую кнопку мыши переместить окно. Т.е. изменение размеров формы и её положения осуществляется таким же способом, как это делается с обычными окнами в Windows. Но, если необходимо установить точные значения, то без окна ObjectInspector не обойтись.
Разместите на форме 5 кнопок редактирования и установите для них следующие свойства в окне Object Inspector:
Свойства, одинаковые у всех 5 кнопок:
Width |
97 |
Top |
8 |
Следующие свойства различны для каждой кнопки:
Button1 |
|
Caption |
InputBox |
Left |
8 |
Button2 |
|
Caption |
MessageDlgPos |
Left |
112 |
Button3 |
|
Caption |
MessageDlg |
Left |
216 |
Button4 |
|
Caption |
ShowMessage |
Left |
320 |
Button5 |
|
Caption |
Выход |
Left |
424 |
Положение кнопок на форме можно изменять в ручную, перемещая их по стартовой форме, причём все компоненты привязаны к сетке, которая отображается в виде точек, следовательно, переместить компонент можно лишь на величину, равную шагу сетки. Размеры компонентов также можно изменять с помощью мыши, и величина, на которую можно изменить ширину или высоту, определяется шагом сетки.
Перейдите к окну кода программы.
Сделаем так, чтобы при нажатии на первую кнопку появлялось диалоговое окно с полем редактирования, в которое можно было бы ввести какое-нибудь слово, а при нажатии на вторую кнопку появлялось окно с сообщением, отображающим введённое слово. При нажатии на третью кнопку также выдаётся окно введённым словом, и в этом окне присутствуют несколько кнопок. При нажатии на четвёртую кнопку появляется диалоговое окно с сообщением о том, какую кнопку нажал пользователь в предыдущем окне.
Для работы второго и третьего окон понадобится переменная строкового типа, для работы четвёртого окна понадобится ещё две переменные – строковая и целочисленная.
В разделе объявления переменных добавьте три новые переменные.
var str1,str2 : string; x : integer; |
Чтобы ввести текст процедуры, описывающей событие OnClick, для кнопки не обязательно открывать вкладку Events окна ObjectInspector, достаточно сделать двойной челочек левой кнопкой мыши по той кнопке, для которой необходимо написать процедуру, тогда откроется окно кода программы с зарезервированной заготовкой для описания процедуры.
Процедура для первой кнопки выглядит следующим образом:
procedure TForm1.Button1Click(Sender: TObject); begin str1 := InputBox('Пользователь','Введите слово','Слово'); end; |
