Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.04;
Скачать: CL | DM;

Вниз

Вопрос по Модулю Данных:   Найти похожие ветки 

 
kserg@ukr.net   (2002-03-11 10:28) [0]

На один из DataSet-ов в модуле данных ссылаются несколько DBGrid-oв из разных форм(формы-модальные,т.е.в конкретный момент только один DBGrid подключен к DataSet-у).
Вопрос: как в событии OnDataChange мне выяснить какой из DBGrid-ов сейчас подключен к DataSet-у?


 
kserg@ukr.net   (2002-03-11 13:10) [1]

Народ, так всё таки как лучше сделать???


 
Jony ©   (2002-03-11 13:30) [2]

Я это делаю следующим образом:
В МД прописываю булевую переменную, которую "приписываю" к конкретной форме (например, flgForm01) и инициализирую ее в False. В FormShow устанавливаю True (соответственно, в FormDestroy - в False). А в OnDataChange анализирую:

if flgForm01 then begin
(* обработчик для Form01 *)
end;
if flgForm02 then begin
(* обработчик для Form02 *)
end;
и т.д.

Работает нормально. Если приемлемо - используй.


 
USAtyj ©   (2002-03-11 13:35) [3]

При вызове модальной формы у датасета изменяй свойство Tag на нужное число, например: если Форм1, то Tag=1, Форм2 - Tag=2, Форм3 - Tag=3.
А потом в событии OnDataChange проверяешь Tag и обнуляешь его после обработки.


 
Yuvich ©   (2002-03-12 13:48) [4]

Вообще-то, DBGrid соединяется с DataSet через DataSource.
Т.о., сколько DBGrid - столько и DataSource. Событие OnDataChange обычно вешается на DataSource. Т.е., Каждый обработчик этого события "знает" с каким DataSource он работает, а каждый DataSource связан со своим DBGrid. Т.о., "размазывая" один обработчик по нескольким DataSource, можно добиться, что бы для каждого DBGrid выполнялись свои специфические действия.


 
Johnmen ©   (2002-03-12 14:14) [5]

>Yuvich © :
>Т.о., сколько DBGrid - столько и DataSource

А все DBGrid могут иметь один DataSource !!!

>kserg@ukr.net : Можно проверять, какая форма сейчас активна...


 
Yuvich ©   (2002-03-12 15:01) [6]

> Johnmen
Правильно, могут. Чтобы не "городить огород" с flgFormXX и Tag, и делается: один DBGrid - один DataSource.



Страницы: 1 вся ветка

Текущий архив: 2002.04.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
1-9533
новенький в Делфи
2002-03-23 17:25
2002.04.04
Работа с фалами


1-9525
Alex_LG
2002-03-18 06:18
2002.04.04
Где взять исходники *.pas для стандартных юнитов Дельфи?


3-9422
vlad2
2002-03-04 09:29
2002.04.04
dBase


3-9364
scordi
2002-03-10 03:30
2002.04.04
Народ! Как в PARADOXе заполнить поле типа Graphic или Memo? (подробнее про Blob поля или другие идеи...)!


1-9574
Malder
2002-03-24 21:07
2002.04.04
Выскажите, пожалуйста, свои мысли по поводу моего задания =)