Я хочу получить данные из определенной ячейки в DBGrid? Как я могу сделать это в Delphi 7? Я знаю, что с помощью Stringgrid вам было легко использовать StringGrid1.Cells[2,1]
, если вы хотите показать строку 2 столбца 1, но есть ли способ сделать это с помощью DBGrid?Как указать ячейку в DBGrid?
0
A
ответ
2
TDBGrid
не содержит данных; который исходит от подключенного TDataSet
. Таким образом, чтобы получить информацию, вы сами читаете базу данных. Текущей строкой в DBGrid
является текущая запись (строка) в DataSet
, а столбец - TField
, подключенный к столбцу в этой строке.
Так что, если вы хотите прочитать из третьего столбца в сетке, и что колонна прикрепляется к полю с именем «Клиент» в наборе данных, вы бы просто прочитать это поле:
Customer := DBGrid1.DataSource.DataSet.FieldByName('Customer').AsString;
Или , конечно, лучше (поскольку у вас должен быть доступ к набору данных непосредственно в вашем коде):
Извините. Я не понимаю, что означает ваш комментарий. Я точно объяснил, как получить данные. –
С помощью метода, который вы мне дали, я все еще не могу попасть во вторую строку «DBGrid»? Я могу получить все значения первой строки. Но является ли их способ получить данные из второй строки ext? – 4DaMouf
Да. Переместите указатель записи в следующую строку, используя 'DBGrid1.DataSource.DataSet.Next;' или 'CustomerTable.Next;'. В сетке нет данных (как я сказал в первом предложении) - вы ** должны ** прочитать его из самой таблицы. –