Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 06.04.2009, 12:29
immortal-snake immortal-snake вне форума
Прохожий
 
Регистрация: 06.04.2009
Сообщения: 5
Репутация: 10
По умолчанию Число строк в DBGRID!!!

Подскажите плиз как узнать число строк в отфильтрованном dbgrid ? Либо как вариант как узнать номер текущей строки в отфильтрованном DBgrid ? (это нужно, чтобы автоматом выбиралась последняя запись, определялся ее номер и соответственно этот номер равен число строк).
Я новичек поэтому прошу подробнее, спасибо!
Ответить с цитированием
  #2  
Старый 06.04.2009, 12:47
Аватар для pesi
pesi pesi вне форума
Активный
 
Регистрация: 12.09.2008
Сообщения: 275
Репутация: 43
По умолчанию

Код:
label1.Caption:= inttostr(DBGridEh1.Row); //выведит в label номер строки

label1.Caption:= IntToStr(DBGridEh1.RowCount-1); //выведит в label количество строк

Последний раз редактировалось pesi, 06.04.2009 в 13:19.
Ответить с цитированием
  #3  
Старый 06.04.2009, 12:52
immortal-snake immortal-snake вне форума
Прохожий
 
Регистрация: 06.04.2009
Сообщения: 5
Репутация: 10
По умолчанию

Цитата:
Сообщение от pesi
Код:
label1.Caption:= inttostr(dbgrid1.Row); //выведит в label номер строки

label1.Caption:= IntToStr(DBGrid1.RowCount-1); //выведит в label количество строк
на Row и Rowcount кампилятор ругается. Да и у dbgrid таких свойств не нашел. У dbgrid есть только columns - столбцы!
Ответить с цитированием
  #4  
Старый 06.04.2009, 13:06
Аватар для pesi
pesi pesi вне форума
Активный
 
Регистрация: 12.09.2008
Сообщения: 275
Репутация: 43
По умолчанию

Код:
label1.Caption:=inttostr(dbgrid1.DataSource.DataSet.RecNo);
ошибся тот код для DBGridEh сетки
Ответить с цитированием
  #5  
Старый 06.04.2009, 13:18
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Код:
DBGrid.DataSource.DataSet.RecordCount;
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #6  
Старый 06.04.2009, 13:25
immortal-snake immortal-snake вне форума
Прохожий
 
Регистрация: 06.04.2009
Сообщения: 5
Репутация: 10
По умолчанию

Цитата:
Сообщение от Aristarh Dark
Код:
DBGrid.DataSource.DataSet.RecordCount;
Не верно считает, из базы в 3000 записей после фильтрации остается например 3 записи в bdgrid, а делфя выдает непонятное значинение 2895, не понятно вообще откуда он это взял.
Ответить с цитированием
  #7  
Старый 06.04.2009, 13:35
Аватар для pesi
pesi pesi вне форума
Активный
 
Регистрация: 12.09.2008
Сообщения: 275
Репутация: 43
По умолчанию

Код:
type
  TDBGridX = class(TDBgrid);

label1.Caption:=  inttostr(TDBGridX(dbGrid1).Row);
label2.Caption:=  inttostr(TDBGridX(dbGrid1).RowCount-1);

подправил

Последний раз редактировалось pesi, 06.04.2009 в 13:51.
Ответить с цитированием
  #8  
Старый 06.04.2009, 13:51
immortal-snake immortal-snake вне форума
Прохожий
 
Регистрация: 06.04.2009
Сообщения: 5
Репутация: 10
По умолчанию !

Цитата:
Сообщение от pesi
Код:
type
  TStringGridX = class(TStringGrid);

label1.Caption:=  inttostr(TStringGridX(dbGrid1).Row);
label2.Caption:=  inttostr(TStringGridX(dbGrid1).RowCount);
Так работает, спасибо за помощь!
Ответить с цитированием
  #9  
Старый 06.04.2009, 13:55
Аватар для pesi
pesi pesi вне форума
Активный
 
Регистрация: 12.09.2008
Сообщения: 275
Репутация: 43
По умолчанию

Да незачто!!!
я там подправил
Ответить с цитированием
  #10  
Старый 06.04.2009, 14:05
immortal-snake immortal-snake вне форума
Прохожий
 
Регистрация: 06.04.2009
Сообщения: 5
Репутация: 10
По умолчанию !

Цитата:
Сообщение от pesi
Да незачто!!!
я там подправил
Заметил неточность - считается только видимая часть строк в dbgrid, а если например после фильтра остается 30 записей, а в сетки в фокусе только 20, то он и напишет, что всего 20 записей, а не 30 как надо
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 20:00.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter