Міністерство освіти і науки України
Національний Університет «Львівська політехніка»
Кафедра «Інформаційні системи та мережі»
Лабораторна робота № 3
Методи та засоби комп’ютерних інформаційних технологій
«Побудова інтерфейсу з невидимими елементами.»
Мета: Набуття навичок із використання в програмах елементів керування Label і Memo для відображення та редагування багаторядкового тексту.
Завданя: Програму, розроблену під час виконання лабораторної роботи № 2, доповнити довідкою про розробника, яка повинна включати не менше тридцяти слів. Для зберігання довідки використати елемент керування Label. Ця програма повинна забезпечувати:
відображення довідки лише за побажанням користувача;
приховання довідки після її перегляду;
можливість корекції довідки під час виконання програми;
засоби, які використовуються при корекції довідки та її приховання повинні бути доступними лише під час перегляду довідки.
Хід виконання роботи
Додамо на форму лабораторної роботи №2 нові компоненти для відображення та редагування багаторядкового тексту.
/
Запрограмуємо події на нові компоненти програми.
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Edit1Change(Sender: TObject);
var
i:double;
begin
If not TryStrToFloat(Edit1.Text,i) then Edit1.Text:='';
end;
procedure TForm1.Edit2Change(Sender: TObject);
var
i:double;
begin
If not TryStrToFloat(Edit2.Text,i) then Edit2.Text:='';
end;
procedure TForm1.Edit3Change(Sender: TObject);
var
i:double;
begin
If not TryStrToFloat(Edit3.Text,i) then Edit3.Text:='';
end;
procedure TForm1.Button1Click(Sender: TObject);
Var
x1,x2,d,a,b,c:double;
z:string;
begin
TryStrToFloat(Edit1.Text,a);
TryStrToFloat(Edit2.Text,b);
TryStrToFloat(Edit3.Text,c);
d:=sqr(b)+4*a*c;
if d = 0 then begin
Label13.Caption:='розвязків нема';
Label14.Caption:='розвязків нема';
exit;
end;
x1:=(-b-sqrt(d))/(2*a);
x2:=(-b+sqrt(d))/(2*a);
z:=copy(FloatToStr(x1),1,5);
Label13.Caption:=z;
z:=copy(FloatToStr(x2),1,5);
Label14.Caption:=z;
end;
procedure TForm1.Edit4Change(Sender: TObject);
var
i:double;
begin
If not TryStrToFloat(Edit4.Text,i) then Edit4.Text:='';
end;
procedure TForm1.Edit5Change(Sender: TObject);
var
i:double;
begin
If not TryStrToFloat(Edit5.Text,i) then Edit5.Text:='';
end;
procedure TForm1.Edit6Change(Sender: TObject);
var
i:double;
begin
If not TryStrToFloat(Edit6.Text,i) then Edit6.Text:='';
end;
procedure TForm1.Button2Click(Sender: TObject);
Var
S,p,a,b,c:Double;
z:string;
begin
TryStrToFloat(Edit4.Text,a);
TryStrToFloat(Edit5.Text,b);
TryStrToFloat(Edit6.Text,c);
p:=(a+b+c)/2;
S:=sqrt(p*(p-a)*(p-b)*(p-c));
z:=copy(FloatToStr(p*2),1,6);
Label20.Caption:=z;
z:=copy(FloatToStr(S),1,6);
Label21.Caption:=z;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
Form1.Close;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Form1.Width:=700;
Memo1.Visible:=true;
Button5.Visible:=true;
Button6.Visible:=true;
Memo1.ReadOnly:=true;
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
Form1.Width:=435;
Memo1.ReadOnly:=true;
memo1.Visible:=false;
Button5.Visible:=false;
Button6.Visible:=false;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
memo1.ReadOnly:=false;
end;
end.
Перевіримо роботу програми.
/
Висновок: Під час виконання лабораторної роботи набув навичок із використання в програмах елементів керування Label і TextBox для відображення та редагування багаторядкового тексту.