Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Указатель записи в DBGrid


Автор: Loser 9.12.2007, 13:11
Скажите пожалуйста, есть у этого компонента свойство SelectedRows. Как я понял оно возвращаетт номер записи на котором стоит указатель? А как можно выцепить ID этой записи? Через запрос?

Автор: Vas 9.12.2007, 16:35
SelectedRows массив выделенных строк, если включен в опциях MultiSelect то тогда и используется. DBGrid только отображает данные, соответственно если указатель стоит на нужной строке, то она является текущей и в привязанном наборе данных, обращаемся к полю запроса или таблицы:
Код

id:=Query1.FieldByName('Id').AsInteger;
или если не знаем какой запрос привязан к гриду
id:=DBgrid1.DataSource.DataSet.FieldByName('id').AsInteger;


P.S.
А по хорошему берем книгу по дельфям и читаем. И обязательно F1 (без него никак)!

Автор: Loser 9.12.2007, 18:56
т.е. создаем компонент ADOQuery1 и в нем пишем
Код
select id from table;
  а далее 

Код

id:=ADOQuery1.FieldByName('Id').AsInteger;


Так?
Или  не нужно создвать нового компонента запроса а в строке id:=ADOQuery1.FieldByName('Id').AsInteger; 
вместо ADOQuery1 имя запроса через который в DBGrid  осуществляеться вывод?

Цитата
И обязательно F1 (без него никак)


Это что такое?



Автор: SergeBS 10.12.2007, 11:05
Loser, 
Ясно же объяснили: набираешь в Delphi - DBGrid. На этом слове давишь F1 и читаешь, откуда в этом гриде данные берутся. Или читаешь книжку, если с английским проблемы.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)