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

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

DBGrid и "DataSet.AfterOpen" [D7]


Silver... ©   (2006-02-02 17:07:00) 

Как мне "из-под (от его имени)" DBGrid-а узнать что он сеичас будет данные заливать (типа уловить что у его DataSet-а случилось DataSet.Open)

Поесню(упрощенно): Есть Фрейм На нем лежит DBGrid и панель с меткой. Так вот как тока в DBGrid сливаются данные мне нужно в метке положить данные из др. DataSet-а.
 Конечно мог бы сделать в DataSet.AfterOpen но тока вот беда этот фреим имеется и на др. формах не буду же обработку в каждоы форме делать или в AfterOpen все Фреймы искать ктоб в Метке инфу показать. Вот и радилась идея словить момент когда DBGrid заливает данные и при этом и с меткой разобраться


Silver...   (2006-02-02 17:50:00) [1]

Ega23 ©   (02.02.06 17:25) [1]
Спасибец даже не ожидал так быстро ПРАВЕЛЬНЫЙ ответ получить


Ega23   (2006-02-02 17:25:00) [2]


TMyFrame = class (TFrame)
 DBGrid : TDBGrid;
 ........

 procedure DataSetafterOpen(DataSet:TDataSet);

private
 .....
 FOldafterOpen :  TDataSetNotifyEvent;
public
 procedure AfterConstruction; override;
 procedure BeforeDestruction; override;

end;

procedure TMyFrame.AfterConstruction;
begin
 inherited;

 FOldafterOpen:=DBGrid.DataSource.DataSet.AfterOpen;
 DBGrid.DataSource.DataSet.AfterOpen:=DataSetafterOpen;
end;

procedure TMyFrame.BeforeDestruction;
begin
 DBGrid.DataSource.DataSet.AfterOpen:=FOldafterOpen;
 
 inherited;
end;

procedure DataSetafterOpen(DataSet : TDataSet);
begin
 if Assigned(FOldafterOpen) then FOldafterOpen(DataSet);

 Тут твой обработчик
end;


Вроде так...


Наверх

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