Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.045 c
2-1157976752
pavel_guzhanov
2006-09-11 16:12
2006.10.01
Заполнение двумерного массива


11-1133060395
Neiroman
2005-11-27 05:59
2006.10.01
Помогите чайнику!


4-1148671260
valentin
2006-05-26 23:21
2006.10.01
Чтения с USB порта


15-1157915644
hak
2006-09-10 23:14
2006.10.01
Password and Login in Dial-Up


15-1157912513
Tar[OFF]
2006-09-10 22:21
2006.10.01
Помогите сделать принтер




   Наверх