![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Возможно ли в listbox зделать такое условие? [D7]
dplz © (2009-04-10 15:39:00)Мне надо определить нужную строчку по буквам в ней. К примеру вот листбокс:
0. Вася Петров
1. Маша Петунина
2. Игорь Иванов
3. Петр Сидоров
Мне нужно найти строки где есть "Пет"(в данном случае 0, 1, 3). Как это делать?
{RASkov} (2009-04-10 18:20:00) [1]
var N: Integer;
begin
ListBox.MultiSelect:=True;
for N:=0 to ListBox.Count-1 do
ListBox.Selected[N]:=Pos('Пет', ListBox.Items[N])>0;
end;
Anatoly Podgoretsky (2009-04-10 17:58:00) [2]Ну вот опять дурное желание без указания самой задачи.
Игорь Шевченко (2009-04-10 16:58:00) [3]MsGuns © (10.04.09 15:59) [8]
> Мне нужно найти строки где есть "Пет"(в данном случае 0,
> 1, 3).
dplz (2009-04-10 16:18:00) [4]Спасибо!
MsGuns (2009-04-10 15:59:00) [5]
function TForm1.SeekListBoxLine(ListBox: TListBox; Smp: string; Loc: boolean = true): boolean;
var
i,ndx: integer;
begin
ndx := -1;
for i :=0 to ListBox.Items.Count-1 do
if AnsiUpperCase(ListBox.Items[i],1,Length(Smp))=AnsiUpperCase(Smp) then
begin ndx := i; break; end;
if (ndx>-1) and Loc then ListBox.ItemIndex := ndx;
result := (ndx>-1);
end;
dplz (2009-04-10 15:58:00) [6]Очень смешно. Спасибо за совет!!!!!!
Palladin (2009-04-10 15:55:00) [7]повторение - мать учения
Kolan (2009-04-10 15:55:00) [8]А куда же они (исходники) делись? Попробуйте восстановить по памяти.
Подсказка — для цикла используйтеfor, для условияif, для сравнения=.
dplz (2009-04-10 15:50:00) [9]ну я в смысле по примерам лучше понимаю) А перебором я пытался, ничего толкового не вышло, исходников тоже не осталось...
Palladin (2009-04-10 15:46:00) [10]с чем этим?
dplz (2009-04-10 15:45:00) [11]можно пример кода, я не знаком с этим
MsGuns (2009-04-10 15:40:00) [12]перебором строк со сравнением части строки с шаблоном