
лабораторная работа / лабораторные работы по LAZARUS / Отчет спо лаба 4 лазарус вариант 20
.docxЦель работы: освоить применение компонентов ListBox и СomboBox и создать приложение, в котором используются строки.
Задание: Задано существительное первого склонения, оканчивающееся на ‘а’. Напечатайте это слово во всех падежах. Ввод строки заканчивать нажатием клавиши Enter. Работа приложения должна завершаться нажатием кнопки Close.
Листинг программы:
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,
Buttons;
type
{ TForm1 }
TForm1 = class(TForm)
BitBtn1: TBitBtn;
Button1: TButton;
Edit1: TEdit;
Label1: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
ListBox1: TListBox;
procedure Button1Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: char);
procedure FormActivate(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
{ TForm1 }
procedure TForm1.FormActivate(Sender: TObject);
begin
Edit1.SetFocus;
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: char);
begin
if key=#13 then
begin
ListBox1.Items.Add(Edit1.Text);
Edit1.Text:='';
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
st,st1,st2,st3,st4,st5,st6: string;
n,i,nst: integer;
begin
nst:=ListBox1.ItemIndex;
st:=ListBox1.Items[nst];
for i:=1 to Length(st) do
if (st[i]>=#192) and (st[i]<=#255)
then
n:=Length(st);
n:=n-1;
st1:=st;
st2:=copy(st,1,n)+#232;
st3:=copy(st,1,n)+#229;
st4:=copy(st,1,n)+#243;
st5:=copy(st,1,n)+#238+#233;
st6:=copy(st,1,n)+#229;
Label4.Caption:=st1;
Label5.Caption:=st2;
Label6.Caption:=st3;
Label7.Caption:=st4;
Label8.Caption:=st5;
Label9.Caption:=st6;
end;
initialization
{$I unit1.lrs}
end.