Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];

Вниз

Помогите с 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.012 c
15-1157883609
Strate
2006-09-10 14:20
2006.10.01
Каракули в программах, написанных на D7 в англоязычной винде


2-1157773076
toSka
2006-09-09 07:37
2006.10.01
Кнопка с картинкой


2-1157880067
YOjik
2006-09-10 13:21
2006.10.01
Как правильно передать указатель на объект


2-1157723033
random(128)
2006-09-08 17:43
2006.10.01
HashLib! v1.03 и т.д.


2-1157719579
max1991
2006-09-08 16:46
2006.10.01
помогите, пожалуйста с TaskBar





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский