Вниз
Скачать: CL | DM;

Без темы.   Найти похожие ветки 

← →
RDA ©   (2003-01-10 16:30) [0]

К примеру: главная форма - размещены компоненты DBEdit, в другом модуле DM (TDataModule) содержаться TTable, TDataSource. Как реагировать компонентам главной формы на измениие набора данных. Если запись изменилась и определенное поле равно False то как запретить ввод данных путем установления для DBEdit свойства ReadOnly равным True. На главной форме расположен грид, и изменения записей обрабатіваются через него.
Немного короче. Если расположить компоненты доступа (TTable, TdataSource) в главном модуле то все просто - обрабатываем событие OnDataChange там же, а если компоненты в отдельном модуле?


← →
Val ©   (2003-01-10 16:35) [1]

что-то я не понял проблемы :(
в главном модуле пишем: uses DM;
и обращаемся DM.MyTable...


← →
TTCustomDelphiMaster ©   (2003-01-10 16:38) [2]

OnDataChange


← →
Соловьев   (2003-01-10 16:39) [3]

Даже если в DM расположены - принцып не меняется.


← →
MsGuns ©   (2003-01-10 16:50) [4]

Ну вот у меня стакан на столе, а бутылка на подоконнике. Так что, я не могу выпить, что ли ?
А если без шуток, надо просто понять основные принципы ООП ;))


← →
ЮЮ ©   (2003-01-11 07:42) [5]

>то как запретить ввод данных путем установления для DBEdit свойства ReadOnly равным True

1) Можно, конечно, главный модуль включит в uses (в implementation) модуля DM и, тем самым, получить доступ к компонентам главного модуля, но это не есть хороший стиль.

2) Достаточно поставить ReadOnly для поля набора данных (а не для DBControla) и ни в каком DBControle ни на одной форме уже не сможешь исправить его значение


← →
RDA ©   (2003-01-11 09:44) [6]

>>ЮЮ по первому пункту - в этом все и дело было. Я тоже читал что это не есть хороший стиль, когда модули взаимно используют друг друга, а насчет второго пункта, спасибо - как-то не подумал.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
14-97018
Driverrr
2003-01-13 20:21
2003.01.30
WinXP


7-97068
Оля
2002-11-18 12:58
2003.01.30
Как погасить экран?


14-96965
vidiv
2003-01-10 14:32
2003.01.30
Заработать


4-97091
Alexsc
2002-12-16 12:48
2003.01.30
показать окно ранее запущенной программы


1-96793
alexnmsk
2003-01-22 15:40
2003.01.30
Как сделать dll




   Наверх