type
TForm2 =
class
(TForm)
ListBox1: TListBox;
Edit1: TEdit;
procedure
FormCreate(Sender: TObject);
procedure
Edit1Change(Sender: TObject);
private
Backup: TStringList;
public
end
;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure
TForm2
.
Edit1Change(Sender: TObject);
var
i:
Integer
;
begin
ListBox1
.
Items
.
BeginUpdate;
ListBox1
.
Items
.
Assign(Backup);
if
Edit1
.
Text <>
''
then
for
i := ListBox1
.
Count -
1
downto
0
do
if
Pos(AnsiUpperCase(Edit1
.
Text), AnsiUpperCase(ListBox1
.
Items
.
Strings[i])) =
0
then
ListBox1
.
Items
.
Delete(i);
ListBox1
.
Items
.
EndUpdate;
end
;
procedure
TForm2
.
FormCreate(Sender: TObject);
const
Alpha:
String
=
'абвгдежзиклмнопрстуфхшэюя'
;
var
i:
Integer
;
begin
for
i :=
0
to
99
do
ListBox1
.
Items
.
Add(Alpha[
1
+Random(
25
)] + IntToStr(
1
+ Random(
999
)) +
Alpha[
1
+Random(
25
)] + Alpha[
1
+Random(
25
)] + IntToStr(
1
+ Random(
199
)));
Backup := TStringList
.
Create;
Backup
.
Assign(ListBox1
.
Items);
end
;