Страница 1 из 2

Работа с DBGrid

Добавлено: 04 май 2005, 12:39
Bylka
Я понимаю что вопрос лоховский, но я забыл как это сделать. Как обратится в цикле к определенной к ячейкам?

Добавлено: 04 май 2005, 13:34
LAngel

Код: Выделить всё

  Table1.First;
  while not Table1.eof do
  begin
    ShowMessage(Table1.FieldByName('Field_1').asString);  // тут и обращаемся :)
    Table1.next;
  end;

Добавлено: 04 май 2005, 13:56
Bylka
Спасибо. Вспомнил.

Добавлено: 04 май 2005, 23:26
RoKon
Cool!!! :-) В цикле, да, именно так. А как вне цикла обратиться к определенной ячейке помнил? :-))))))))))
Тут даже яндекс не поможет, тут волшебное сочетание клавиш должно помогать (если не хелп) Ctrl+Space.

Добавлено: 06 май 2005, 08:19
BoBaH
А как вне цикла обратиться к определенной ячейке помнил?
По моему это нельзя реализовать, ибо расположение данных в таблице вы не узнаете и все равно придется использовать цикл и пробегать по всем данным.

Добавлено: 06 май 2005, 10:40
LAngel
Гы...

P := Table1.GetBookMark;
Table1.GotoKey(...);
Val := Table1.FieldByName('...').value;
Table1.GotoBookmark(P);

Добавлено: 06 май 2005, 11:03
Игорь Акопян
по поводу закладок - есть ещё вариан:

Код: Выделить всё

var
  s: string;
begin
//...
  try
    s := Table1.Bookmark;
    // do something
  finally
    Table1.Bookmark := s;
  end;

Добавлено: 08 май 2005, 17:18
RoKon
BoBaH, ну да. А установку указателей на определенную запись уже отменили?

Добавлено: 08 май 2005, 22:56
RoKon
По поводу закладок не мешало бы тогда еще дописать следующее

Код: Выделить всё

...
try
 ...
finally
 ...
 Table1.FreeBookmark(s)
end
added: upss, не обратил внимания, FreeBookmark(s) нужен только если применять.

Код: Выделить всё

var
 s:TBookmark
begin
 ...
 s:=Table1.GetBookmark;
 ...
 Table1.GotoBookmark(s);
 ... 

Добавлено: 11 май 2005, 07:44
BoBaH
RoKon писал(а):BoBaH, ну да. А установку указателей на определенную запись уже отменили?
Дак начинающий еще кадр, что поделать. Постараюсь со временем нести меньше бреда.