Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TDBGrid - номер текущей записи и всего записей в таблице [D6, D7, Win2k, WinXP]


Express ©   (2006-04-25 16:20:00) 

Здравствуйте!
Возникла такая задумка выводить номер текущей записи и сколько всего записей в таблице, для отображения записей использую компонент TDBGrid.

StatusBar.Panels.Items[0].Text :='№ текущей записи: '+IntToStr(DBGrid.DataSource.DataSet.RecNo);
StatusBar.Panels.Items[1].Text :='Всего записей: '+IntToStr(DBGrid.DataSource.DataSet.RecordCount);  

Необходимо чтобы при перемещение по строкам текущая информация обновлялась, в какое событие TDBGrid необходимо поместить данный код????

Или подскажите, как это можно еще сделать??


Johnmen   (2006-04-26 15:09:00) [1]

Единственный корректный ответ [1] с учётом оговорки [3].


Рустем   (2006-04-26 14:57:00) [2]


> Express

Обработай событие OnDataChange компонента TDataSource например так:

procedure TForm.DataSourceDataChange(Sender: TObject;
 Field: TField);
begin
 with DataSource.DataSet do
 begin
   if IsEmpty
   then
     StatusBar.Panels.Items[0].Text := '(0)'
   else
     if (State = dsBrowse) and (Field = nil) then
        StatusBar.Panels.Items[0].Text := Format(' %d:%d', [RecNo, RecordCount]);
 end;
end;


MsGuns   (2006-04-26 13:32:00) [3]

>Плохиш ©   (25.04.06 16:40) [1]
>OnAfterScroll набора данных, не TDBGrid.

Еще TDataSet.OnAfterOpen, TDataSet.AfterRefresh и TDBGrid.OnEnter

>Desdechado ©   (25.04.06 18:48) [3]
>RecNo и RecordCount работает далеко не для всех источников данных

Для двунаправленных курсоров работают. Для RecordCount после открытия надо сразу давать Last, First (при TDataSet.DisableControls) или FetchAll и не тянуть в датасет тучу записей с сервера, иначе будет тормоз при переоткрытиях


Desdechado   (2006-04-25 18:48:00) [4]

RecNo и RecordCount работает далеко не для всех источников данных


Express   (2006-04-25 16:48:00) [5]

Большое спасибо!


Плохиш   (2006-04-25 16:40:00) [6]

OnAfterScroll набора данных, не TDBGrid.


Наверх

Титульная страница Поиск, карта сайта Написать письмо