
- •Дважды кликните по Button1 на форме.
- •procedure TForm1.Button1Click(Sender:TObject);
- •var a, b, c : real;
- •begin
- •a := StrToFloat(Edit1.Text);
- •b := StrToFloat(Edit2.Text);
- •Edit3.Text := FloatToStr(c);
- •Дважды кликните по Button2 на форме.
- •procedure TForm1.Button2Click(Sender:TObject);
- •var a, b, c : real;
- •begin
- •a := StrToFloat(Edit1.Text);
- •b := StrToFloat(Edit2.Text);
- •Edit3.Text := FloatToStr(c);
- •Дважды кликните по Button3 на форме.
- •procedure TForm1.Button3Click(Sender:TObject);
- •var a, b, c : real;
- •begin
- •a := StrToFloat(Edit1.Text);
- •b := StrToFloat(Edit2.Text);
- •Edit3.Text := FloatToStr(c);
- •Дважды кликните по Button4 на форме.
- •procedure TForm1.Button4Click(Sender:TObject);
- •var a, b, c : real;
- •begin
- •a := StrToFloat(Edit1.Text);
- •b := StrToFloat(Edit2.Text);
- •Edit3.Text := FloatToStr(c);
- •Дважды кликните по Button5 на форме.
- •var a, b, c : real;
- •begin
- •a := StrToFloat(Edit1.Text);
- •b := StrToFloat(Edit2.Text);
- •c:=Power(a,b);
- •Edit3.Text := FloatToStr(c);
- •procedure TForm1.Button1Click(Sender:TObject);
- •begin
- •{Очистить содержимое Memo1}
- •Memo1.Clear;
- •Memo1.Lines.Add (Edit1.Text);
- •Memo1.Lines.Add (ComboBox1.Text);
- •procedure TForm1.Button3Click(Sender:TObject);
- •begin
- •{Очистить содержимое компонента Memo1}
- •Memo1.Clear;
- •procedure TForm1.Button4Click(Sender:TObject);
- •begin
- •{Закрыть форму}
- •Close;
- •begin
- •If RadioGroup1.ItemIndex=0
- •Then Form1.Color:=clSilver;
- •If RadioGroup1.ItemIndex=1
- •Then Form1.Color:=clAqua;
- •If RadioGroup1.ItemIndex=2
- •Then Form1.Color:=clYellow;
- •If RadioGroup1.ItemIndex=3
- •Then Form1.Color:=clRed;
- •begin
- •RadioGroup1.ItemIndex:=ScrollBar1.Position;
- •procedure TForm1.Button2Click(Sender:TObject);
- •begin
- •if CheckBox1.State=cbChecked
- •then Memo1.Font.Color:=clPurple
- •else Memo1.Font.Color:=clBlack;
- •if CheckBox2.State=cbChecked
- •then Memo1.Font.Style:=[fsBold]
- •else Memo1.Font.Style:=[];
- •if RadioButton1.Checked
- •then Memo1.Color:=clWhite;
- •1. Пусть даны три числа. Написать программу, которая определяла бы вид треугольника (равносторонний, равнобедренный, разносторонний, прямоугольный, тупоугольный, остроугольный), если данные числа могут быть длинами сторон треугольника.
- •Подписано к изданию 23.04.2013.
• Default При значении True событие OnClick возникает при нажатии клавиши Enter.
Составим программы-обработчики событий OnClick для компонент класса TButton учебного проекта (для добавления Паскаль-кода нужно выделить командную кнопку на форме, перейти на вкладку Events инспектора объектов и дважды кликнуть справа от названия события). Обратите внимание на то, что при двойном щелчке в поле OnClick открывается окно модуля формы, где заголовок необходимой процедурыобработчика уже создан автоматически, а нужно дописать тело подпрограммы. Текстовые комментарии в { } к инструкциям программы приведены здесь и далее для ясности и не обязательны при наборе Паскаль-кода на компьютере.
35. |
Напи- |
procedure TForm1.Button1Click(Sender:TObject); |
шите код |
begin |
|
обработки |
{Очистить содержимое Memo1} |
|
события |
Memo1.Clear; |
|
OnClick |
{Добавить в Memo1 текст, введенный пользо- |
|
компонен- |
вателем в свойство Text компонента Edit1} |
|
та |
Button1 |
Memo1.Lines.Add (Edit1.Text); |
– |
кнопки |
{Добавить в Memo1 выбранный пользовате- |
Отразить |
лем элемент массива Items списка ListBox1} |
|
текст |
Memo1.Lines.Add (ListBox1.Items[ListBox1. |
|
|
|
ItemIndex]); |
|
|
{Добавить в Memo1 выбранный пользовате- |
|
|
лем пункт списка ComboBox1} |
|
|
Memo1.Lines.Add (ComboBox1.Text); |
|
|
end; |
36. |
Добавь- |
procedure TForm1.Button3Click(Sender:TObject); |
те обработ- |
begin |
|
чик |
для |
{Очистить содержимое компонента Memo1} |
кнопки |
Memo1.Clear; |
|
Очистить |
end; |
|
текст |
|
38

37. |
Добавь- |
procedure TForm1.Button4Click(Sender:TObject); |
||
те |
обработ- |
begin |
|
|
чик |
для |
{Закрыть форму} |
|
|
кнопки |
|
Close; |
|
|
Выход |
|
end; |
|
|
38. |
Сохраните |
результаты работы |
Файл|Сохранить все |
|
39. |
Проверьте работу программы |
Запуск|Запуск (F9) |
Компоненты RadioButton, RadioGroup, CheckBox, ScrollBar.
В учебном проекте цвет формы будет изменяться в зависимости от выбора радиокнопки в группе Фон формы и в зависимости от положения указателя на полосе прокрутки.
На рис. 1.2.3 показан макет формы после выполнения примера работы 2.
План примера 2.
1-5. Создание группы RadioGroup1 зависимых переключателей с названием Фон формы.
6-7. Написание обработчика события OnClick компонента RadioGroup1.
8-10. Добавление и настройка компонента ScrollBar.
11-13. Создание и проверка обработчика события OnChange
элемента ScrollBar. |
|
Пример работы 2: |
Подсказка |
1. Добавьте на форму компо- |
Страница Standard |
нент RadioGroup1 |
|
2. Измените название группы |
Свойство Caption |
RadioGroup1 на Фон формы |
(RadioGroup1 выделен!) |
3. Задайте расположение ра- |
Свойство Columns: 2 |
диокнопок в две колонки |
|
4. Укажите подписи для пере- |
В свойстве Items щелкните |
ключателей: |
по кнопке с тремя точками |
Серебристый |
и в появившемся диалоговом |
Голубой |
окне запишите в столбик |
39

Желтый |
цвета формы. Для сохране- |
||
Красный |
ния - нажмите Оk |
||
5. Сделайте активной первую |
Свойство ItemIndex=0 |
||
радиокнопку |
|
|
|
|
|
|
|
|
|
|
|
Рис. 1.2.3. Макет формы после выполнения примера 2.
Контейнер RadioGroup1 содержит список Items зависимых переключателей, каждый из которых доступен по своему номеру. В группу обычно включают не менее двух зависимых переключателей. Через значение свойства Checked логического типа можно определить: выбрана радиокнопка или нет. Только у одного переключателя в группе свойство Checked
40

устанавливается в значение True, тогда как у всех остальных это значение равно False.
Ниже приведена программа, связывающая выбор радиокнопки с изменением фона формы.
6. Напишите |
procedure TForm1.RadioGroup1Click |
|
|
код обработ- |
(Sender:TObject); |
|
|
ки события |
begin |
|
|
OnClick |
{Если выбран определенный переключатель, |
|
|
компонента |
то форма меняет свой цвет} |
|
|
RadioGroup1 |
If RadioGroup1.ItemIndex=0 |
|
|
– группы за- |
Then Form1.Color:=clSilver; |
|
|
висимых пе- |
If RadioGroup1.ItemIndex=1 |
|
|
реключате- |
Then Form1.Color:=clAqua; |
|
|
лей Фон |
If RadioGroup1.ItemIndex=2 |
|
|
формы |
Then Form1.Color:=clYellow; |
|
|
|
If RadioGroup1.ItemIndex=3 |
|
|
|
Then Form1.Color:=clRed; |
|
|
|
end; |
|
|
7. Проверьте |
работу программы |
Запуск|Запуск (F9) |
|
При выборе радиокнопки из радиогруппы Фон формы |
|
||
цвет фона формы должен изменяться. |
|
||
8. Создайте на форме надпись |
Свойство Caption компо- |
|
|
Полоса прокрутки (фон) |
нента Label5 |
|
|
9. Добавьте на форму элемент |
Страница Standard |
|
|
ScrollBar |
|
|
|
Полоса прокрутки ScrollBar обычно используется для визуализации изменения значения числовой величины.
Некоторые свойства объекта класса TScrollBar:
• Kind Ориентация элемента (sbHorizontal - гори-
зонтальная, sbVertical - вертикальная).
• Max Максимальное значение диапазона изменения числовой величины.
41