| Підсумки. Використання елементів керування для реалізації розгалуження в проекті.
Для реалізації розгалуження в проекті можна використовувати елементи управління:
CheckBox - прапорець. Властивість Checked - значення цієї властивості фіксує зміну стану прапорця (true, false).
- if CheckBox1.Checked then <команда1>; // якщо виділений CheckBox1
- if CheckBox2.Checked then <команда2>; // якщо виділений CheckBox2 і т.д.
RadioButton - перемикач. Властивість Checked - значення цієї властивості фіксує зміну стану прапорця (true, false).
if RadioButton1.Checked then <команда1> // якщо виділений RadioButton1
else if RadioButton2.Checked then <команда2> // якщо виділений RadioButton2
.................
else <команда n>;
CheckGroup - група прапорців, використовують у разі, якщо необхідно розмістити декілька груп прапорців на формі.
|
RadioGroup - група перемикачів, використовують у разі, якщо необхідно розмістити декілька груп перемикачів на формі.
|
Властивості: Caption - заголовок групи, Colums - кількість стовбців елементів у групі , ItemIndex -визначає номер (починаючи з 0) елемента управління, який виділений у групі. Якщо не виділений жодний, то значення властивості дорівнює -1. , Items - містить список елементів групи. |
- if CheckGroup1.Checked[0] then <команда1>;
// якщо виділений прапорець групи CheckGroup1 під номером 0
- if CheckGroup1.Checked[1] then <команда2>; і т.д.
|
- if RadioGroup1.ItemIndex = 0 then <команда1>;
// якщо виділений перемикач групи RadioGroup1, значення властивості якого ItemIndex дорівнює нулю.
- if RadioGroup1.ItemIndex =1 then <команда2>; і т.д.
|
ComboBox - окрім текстового поля, яке може містити тільки одне значення, елемент управління список дає змогу обрати одне значення із запропонованного переліку.
Властивості: Count - кількість елементів списку , ItemIndex -визначає номер (починаючи з 0) вибраного елемента . Якщо не виділений жодний, то значення властивості дорівнює -1 , DropDownCount - кількість елементів, які відображаються у списку. Щоб відобразити решту - використовують смугу прокручування..
- if ComboBox1.Text= ' текст вибранного рядка списку' then <команда1>; // якщо значення властивості Text елементу ComboBox1 співпадає з текстом виділеного рядку списку
і т.д.
Розробка проекту "калькулятор" з використанням елементів керування перемикачів, групи перемикачів, розкривного списку, кнопок.
 |
procedure TForm1.Button2Click(Sender: TObject);
var a, b, r: real;
begin
a := strtofloat(edit1.text);
b := strtofloat(edit2.text);
r := a - b ; label4.Caption := floattostr(r);
end;
procedure TForm1.Button3Click(Sender: TObject);
var a, b, z: real;
begin
a := strtofloat(edit1.text);
b := strtofloat(edit2.text);
z := a * b ; label4.Caption := floattostr(z);
end;
procedure TForm1.Button4Click(Sender: TObject);
var a, b, d: real;
begin
a := strtofloat(edit1.text);
b := strtofloat(edit2.text);
if b<>0 then begin d := a / b ; label4.Caption := floattostrF(d,ffFixed,6,3);end
else showmessage('деление на ноль недопустимо');
end;
|
procedure TForm1.Button1Click(Sender: TObject);
var a, b, s: real;
begin
a := strtofloat(edit1.text);
b := strtofloat(edit2.text);
s := a + b ; label4.Caption := floattostr(s);
end; |
 |
procedure TForm1.Button1Click(Sender: TObject);
var a, b, s,r, z, d: real;
begin
a := strtofloat(edit1.text);
b := strtofloat(edit2.text);
if radiobutton1.checked then begin s := a + b ; label4.Caption := floattostr(s); end;
if radiobutton2.checked then begin r := a - b ; label4.Caption := floattostr(r); end;
if radiobutton3.checked then begin z := a * b ; label4.Caption := floattostr(z); end;
if radiobutton4.checked then
if b<>0 then
begin
d := a / b ;
label4.Caption := floattostrF(d,ffFixed,6,3);
end
else showmessage('деление на ноль недопустимо');
end;
|
 |
procedure TForm1.ComboBox1Change(Sender: TObject);
var a, b, s,r, z, d: real;
begin
a := strtofloat(edit1.text);
b := strtofloat(edit2.text);
if combobox1.text = 'сложение' then begin s := a + b ; label4.Caption := floattostr(s); end
else if combobox1.text = 'вычитание' then begin r := a - b ; label4.Caption := floattostr(r); end
else if combobox1.text = 'умножение' then begin z := a * b ; label4.Caption := floattostr(z); end
else if combobox1.text = 'деление' then
if b<>0 then begin d := a / b ; label4.Caption := floattostrF(d,ffFixed,6,3); end
else showmessage('деление на ноль недопустимо');
end;
|
 |
procedure TForm1.RadioGroup1Click(Sender: TObject);
var a, b, s,r, z, d: real;
begin
a := strtofloat(edit1.text);
b := strtofloat(edit2.text);
if radiogroup1.ItemIndex = 0 then begin s := a + b ; label4.Caption := floattostr(s);end ;
if radiogroup1.ItemIndex = 1 then begin r := a - b ; label4.Caption := floattostr(r);end ;
if radiogroup1.ItemIndex = 2 then begin z := a * b ; label4.Caption := floattostr(z);end ;
if radiogroup1.ItemIndex = 3 then
if b<>0 then
begin
d := a / b ;
label4.Caption := floattostrF(d,ffFixed,6,3)
end
else showmessage('деление на ноль недопустимо');
end;
|
Формати числових даних:
FloatToStrF (V,F, P, D) - перетворює дійсне число V в рядок символів з урахуванням формату F і параметрів P, D.
Пояснимо призначення функції FloatToStrF (V, F, P, D). Її використовують для форматованого виведення речового числа.
Параметрів цієї функціі:
- ffFixed - число у форматі з фіксованою точкою,
- P- загальна кількість цифр в поданні числа,
- D - кількість цифр в дробовій частині.
наприклад: label4.Caption := floattostrF(d,ffFixed,6,3)
| |