TDBGrid и избран индекс на редове

Момчета, как да получите индекса на избрания ред в саблевата мрежа? .SelectedIndex е индексът на елемента в низа. В опциите на мрежата проверих RowSelect - true. Един и същ.

TDataSet.RecNo
Показва активния запис в набора от данни.

Както е реализирано в TDataSet, стойността на RecNo винаги е -1. Обикновено приложението няма достъп до RecNo на ниво TDataSet. Вместо това се осъществява повторно декларирано и внедрено свойство RecNo в низходящ клас като TTable. RecNo осигурява резервно свойство за производни набори от данни, които не поддържат номера на записи.

Тези. използвайте като DataSet или TTable или TClientDataSet.
Можете да бъдете извратени по друг начин.

Защо се нуждаете от RecNo?

Като DateSet имам TQuery:-) Накратко, това, от което се нуждая. Решетката показва част от записа, можете да изберете само редове в нея. Когато избирате ред, трябва да прочетете съответното поле, което не се показва в мрежата. Благодаря.

Достъп до набора от данни директно (не до мрежата). В този случай текущият запис на набора от данни ще бъде „взет“ от вас (т.е. този, който е маркиран в мрежата като активна линия). До всяко поле, независимо дали се показва или не, има достъп чрез TDataSet.FieldByName.


> Alexey34 (18.01.05 11:33) [5]

1. Когато изберете ред в мрежата, наборът от данни, свързан с мрежата, се задава на записа, показан в реда.
2. Когато са избрани няколко реда, съответните отметки се запазват в свойството SelectedRows на мрежата.

Източници: Помощ за Delphi, Книги за програмиране.

> достъп чрез TDataSet.FieldByName.

О, да! Работи. Благодаря.