![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как сделать хитрый поиск по листбоксу ?
Дрейфусятина © (2004-07-30 11:38:00)Имеется Edit находящийся прямо над ListBox-ом,
Мне надо сделать так чтобы при вводе текста в Edit, в ListBox-е
оставались только элементы начинающиеся с быкв(ы) введеных в Edit. Как это сделать я не знаю. Помогите плийз, очень надо.
BDenis (2004-07-30 14:47:00) [1]Ну в принципе да, не нужен, забыл удалить...
Sandman25 (2004-07-30 14:46:00) [2][6] BDenis © (30.07.04 14:41)
Не нужен MyStringList.Clear сразу после
MyStringList := TStringList.Create;
BDenis (2004-07-30 14:41:00) [3]Можно так:
var
MyStringList: TStrings;
procedure TForm1.CreateList;
begin
MyStringList := TStringList.Create;
MyStringList.Clear;
MyStringList.Append ('11');
MyStringList.Append ('12');
MyStringList.Append ('21');
MyStringList.Append ('31');
MyStringList.Append ('33');
end;
procedure TForm1.Edit1Change(Sender: TObject);
var
i: BYTE;
begin
ListBox1.Items.Clear;
for i := 0 to MyStringList.Count - 1 do
if Pos (Edit1.Text, MyStringList.Strings [i]) = 1 then
ListBox1.Items.Append (MyStringList.Strings [i]);
end;
procedure TForm1.DestroyList;
begin
MyStringList.Free
end;
clickmaker (2004-07-30 14:04:00) [4]
> [4] Anatoly Podgoretsky © (30.07.04 13:33)
> Это называется ComboBox
Из комбобокса лишние строки не удаляюцца. Просто нужная становится текущей
Anatoly Podgoretsky (2004-07-30 13:33:00) [5]Это называется ComboBox
clickmaker (2004-07-30 13:22:00) [6]
> Дрейфусятина (30.07.04 11:38)
Держать копию строк в отдельном стринглисте, при вводе в едит, очистить листбокс и добавлять туда из копии строки, соответствующие критерию
Дрейфусятина (2004-07-30 13:13:00) [7]Я знаю что надо пробегаться, только после пробежки у меня остается только один элемент. Можно примерчик?!!!
Sandman25 (2004-07-30 11:41:00) [8]Пробегаться по ListBox.Items и удалять все неподходящие.