![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBGRID
Rise © (2003-05-26 14:22:00)Как получить доступ к какой либо ячейке в DBGrid
Stas (2003-05-26 15:20:00) [1]Да работать - работает, но время отнимает.
Rise (2003-05-26 15:18:00) [2]DBGrid1.DataSource.DataSet.First;
While not DBGrid1.DataSource.DataSet.Eof DO
Begin
....................
DBGrid1.DataSource.DataSet.Next;
end;
Вроде все работает
Zacho (2003-05-26 14:58:00) [3]
> Stas © (26.05.03 14:53)
В общем случае RecordCount использовать нельзя.
Например, в IBX RecordCount содержит кол-во только выбранных с сервера записей, а что бы получить кол-во всех записей, возвращаемых запросом, надо сделать FetchAll (или Last, или любым способом пройтись по всему датасету).
Stas (2003-05-26 14:53:00) [4]Не нужно While.
Можно проще.
Table1.RecordCount
Rise (2003-05-26 14:51:00) [5]Да ребят спасибо за наводку я разобрлся
сделаю с помощью while
Rise (2003-05-26 14:48:00) [6]а как можно получить общие колличество записей мне надо перебрать все записи одног поля
я хочу в цикл засунуть
Stas (2003-05-26 14:39:00) [7]Не так просто - [2,4].
Тебе, нужно это
Text:=TableField[2].asString,
Но, БД Работают только с текущей записью, чтобы тебе перейти на какую либо нужно использовать Table1.Locate("IDField",5,[]), где IDFIELD имя поля по которому ведется поиск, 5 - значение поля.
Можно конечно сделать так, но это непрвильно и невсегда работает:
Table.First
for i:=1 to 3 do Table.Next
Text:=TableField[2].asString,
paul_77 (2003-05-26 14:38:00) [8]т.е. имеется в виду 2 строчка 4 столбец ?
Zacho (2003-05-26 14:37:00) [9]
> Rise © (26.05.03 14:31)
TDBGrid не содержит данных ! Он только отображает данные из подключенного к нему датасета. Читай хелп по св-вам и методам TDataSet.
> мне нужно из ячейки допустим с номером [2,4] вытащить текст
Например, так:
DBGrid.DataSource.DataSet.First;
DBGrid.DataSource.DataSet.MoveBy(2);
MyVar:=DBGrid.DataSource.DataSet.Fields[4].Value;
Rise (2003-05-26 14:31:00) [10]мне нужно из ячейки допустим с номером [2,4] вытащить текст
Stas (2003-05-26 14:27:00) [11]Если тебе это нужно то так
Dbgrid.SelectedIndex:=1
где 1 это номер ячейки
А если это то так:
Table.Field[0].asVariant
или так
TableFieldByName("MyField").asVariant