![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Помогите написать кусочек программы. Есть ListBox в котором находятся номера автомобилей нужно при вводе в Edit чисел чтобы из ListBox пропадали те номера которые не совпадают и оставались только те которые совпадают 100%, поиск нужен по всему слову а не только с первой позиции (так как е первой позиции я знаю как сделать а мне нужен вхождение). И кода человек из оставшихся позиций выберет нужную в Label выводило данные номер авто который выбрали и его индекс. Пример привожу и его результа который должен получится в картинках!
|
#2
|
||||
|
||||
![]() используй Pos()
Пишу программы за еду. __________________ |
#3
|
||||
|
||||
![]() Код:
type TForm2 = class(TForm) ListBox1: TListBox; Edit1: TEdit; procedure FormCreate(Sender: TObject); procedure Edit1Change(Sender: TObject); private Backup: TStringList; public { Public declarations } 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; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |