Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.01;
Скачать: CL | DM;

Вниз

Помогите с TStringgrid   Найти похожие ветки 

 
Blacksus   (2006-08-23 19:38) [0]

Помогите кто знает, у меня небольшая проблемма с программой. Есть объект TStringGrid (таблица), он заполняется информацией из файла. Я реализовал в нем поиск по ячейкам. Если искомое слово находится в ячейке, то ячейка выделяется. Проблемма в том, что если эта ячейка находится за областью видимости, то скроллбар не срабатывает и ячейка так и остается вне зоны видимости. Если нажать на любую стрелку на клавиатуре, то скроллбар перемещает экран к этой ячейке. Как бы сделать так, чтобы область видимости перемещалась автоматически к найденой ячейке??? Перепробовал все методы этого объекта - безрезультатно!!!
Отрывок кода для наглядности:

procedure TForm1.Button4Click(Sender: TObject);
var
Rect: TGridRect;
begin
st:=edit3.text;
for si:=1 to sn do
 for sj:=0 to 10 do
  begin
   for sk:=1 to length(stringgrid1.cells[sj,si])-length(st)+1 do
    if copy(stringgrid1.cells[sj,si],sk,length(st))=st then
     begin
      rect.Left:=sj;
      rect.Top:=si;
      rect.Right:=sj;
      rect.Bottom:=si;
      stringgrid1.selection:=rect; //Выделяет найденую ячейку
      stringgrid1.SetFocus; //Фокус на окне таблицы
     end;
  end;
end;


 
Sergio77   (2006-08-23 20:05) [1]

stringgrid1.leftcol:=
stringgrid1.toprow:=

для примера проще:
for y:=1 to Stringgrid1.Colcount do
for x:=1 to stringgrid1.rowcount do
 if stringgrid1.cells[x,y] = edit1.text then ...
 if AnsiUppercase(stringgrid1.cells[x,y]) = ansiuppercase(edit1.text) then ...
 if pos(edit1.text, stringgrid1.cells[x,y]) > 0 then ...


 
Sergio77   (2006-08-23 20:10) [2]

быстро писал, надо поработать в зависимости от задачи над x и y смотря в каких колонках и строках надо искать..


 
Sergio77   (2006-08-23 20:12) [3]

в данном случае у тебя третий вариант поиска, если надо без учета регстр, то используй ansiuppercase в третем варианте



Страницы: 1 вся ветка

Текущий архив: 2006.10.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.057 c
1-1156158639
webpauk
2006-08-21 15:10
2006.10.01
Градиентная линия


2-1158125591
DROWSY
2006-09-13 09:33
2006.10.01
Capability nоt supported.


15-1157781176
syte_ser78
2006-09-09 09:52
2006.10.01
непонятное поведение sql запроса


15-1157802940
Сергуня
2006-09-09 15:55
2006.10.01
Какой телефон купить


15-1157708241
SerJaNT
2006-09-08 13:37
2006.10.01
Звуки