[решено] Как узнать номер выделенной строки в DBGrid?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

[решено] Как узнать номер выделенной строки в DBGrid?

Сообщение jotto » 04.11.2015 20:52:33

В Delphi так
Код: Выделить всё
TStringGrid(DBGrid1).Row

а как в Lazarus?
----
Добавил uses grids - заработало
Последний раз редактировалось jotto 06.11.2015 14:00:15, всего редактировалось 1 раз.
jotto
новенький
 
Сообщения: 17
Зарегистрирован: 26.10.2010 10:44:20

Re: Как узнать номер выделенной строки в DBGrid?

Сообщение Vadim » 05.11.2015 13:06:33

jotto
Начнём с того, что DBGrid - это вовсе и не таблица, а всего лишь зримое отображение набора данных и, следовательно, там нет никаких строк вовсе. Отсюда логический вывод - нужно спросить номер строки у набора данных. Если Вы смотрите данные, к примеру, из DBF-файла, то узнать номер строки можно:
Код: Выделить всё
Dbf1.RecNo;
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Как узнать номер выделенной строки в DBGrid?

Сообщение jotto » 06.11.2015 13:58:55

Vadim , мне номер строки в гриде нужен был для отрисовки своего контрола, про DataSet я не говорил :D
jotto
новенький
 
Сообщения: 17
Зарегистрирован: 26.10.2010 10:44:20

Re: [решено] Как узнать номер выделенной строки в DBGrid?

Сообщение Vadim » 06.11.2015 15:42:48

jotto
Так бы сразу и сказали, а то всё так таинственно. ;-)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: [решено] Как узнать номер выделенной строки в DBGrid?

Сообщение tema » 07.11.2015 02:19:33

Код: Выделить всё
property Row: Integer read FRow write SetRow;

Есть точно в TCustomGrid. Достаточно создать класс myTDBGrid(TDBGrid) с этим свойством :-)

Добавлено спустя 7 минут 1 секунду:
Код: Выделить всё
type
  MyDBGridHack = class(TDBGrid);

procedure TForm1.Button1Click(Sender: TObject);
begin
  Showmessage(inttostr(MyDBGridHack(DBGrid1).Row));
end;
tema
постоялец
 
Сообщения: 376
Зарегистрирован: 24.03.2011 20:19:27


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 250

Рейтинг@Mail.ru