Показать сообщение отдельно
  #1  
Старый 15.11.2014, 12:09
Wandalin Wandalin вне форума
Прохожий
 
Регистрация: 14.11.2014
Сообщения: 3
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию StringGrid поиск по первой букве

Помогите доработать код поиска в StringGrid.

Есть таблица с фамилиями в первом столбце,Edit и кнопка.Пишем несколько первых букв фамилии и клацаем по кнопке.Пока что поиск работает криво. Показывает он только первое подходящее под наш поиск значение, а остальные игнорит и если это значение находится на дне списка,то оно его выделяет но пользователь его не видит.


Код:
procedure TForm2.Button1Click(Sender: TObject);
var
i,n:integer;
s:string;
t: TGridRect;
begin
s:=AnsiLowerCase(Edit2.Text);
with stringGrid1 do
   for i := 1 to rowCount - 1 do
   begin
          s:=stringgrid1.Cells[1,i];
     if AnsiUpperCase(Copy(S,0,length(edFind.text)))=AnsiUpperCase(Edit2.Text) then
    begin
       t.Left := 1;
       t.Top := i;
       t.Right := 9;
       t.Bottom := i;
       StringGrid1.Selection:=t;
       exit;
      end
    end
   end ;
Нужно сделать так чтобы он выделял все подходящие под поиск значения, и если оно на дне списка то проматывать таблицу в поле видимости найденной строки. Заранее спасибо!
Ответить с цитированием