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

Вниз

Как программно отключить обработчик события OnCalcFields ?   Найти похожие ветки 

 
Grey   (2003-03-14 11:21) [0]

Мастера, подскажите пожалуйста , как программно на время отключить обработчик события OnCalcFields , а потом его восстановить ?


 
Anatoly Podgoretsky ©   (2003-03-14 11:30) [1]

Стандартный оператор Паскаля :=


 
Grey   (2003-03-14 11:33) [2]

>Anatoly Podgoretsky
А конкретнее как?
делаю сначала InputQuery.OnCalcFields:= nil;
а на Query.OnCalcFields:= QueryCalcFields(DataSet); выдаёт ошибку что не совместимые типы TDataSetNotifyEvent и процедура


 
Smithson ©   (2003-03-14 11:35) [3]

Во-первых, его действиетльно можно присвоить nil.
Во-вторых, можно определить некий флаг, который проверять в обработчике. Если он взведен тогда завершение процедуры.


 
Anatoly Podgoretsky ©   (2003-03-14 12:04) [4]

Grey (14.03.03 11:33)
Ну первую часть с nil выполнил правильно, а вот вторую конечно ересь, надо или присвоить или сохраненый обработчик или предопределенный, тоже с помощью :=.


 
icWasya ©   (2003-03-14 12:30) [5]



TForm1.RoutineWithoutCalcFields;
var OldCalc:TDataSetNotifyEvent;
begin
OldCalc:=InputQuery.OnCalcFields;
try
InputQuery.OnCalcFields:= nil;
//........
InputQuery.insert;
.... или что у Вас там
InputQuery.Post;
//.......
finally
InputQuery.OnCalcFields:= OldCalc;
end;
end;


 
Grey   (2003-03-14 13:14) [6]

>icWasya © (14.03.03 12:30)

Спасибо.


 
Mike Kouzmine   (2003-03-14 15:02) [7]

AutoCalcFields := False?



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
8-88088
Ssergy
2002-12-15 00:09
2003.03.27
Вычитание из одной поверхности другой


14-88236
Фагот
2003-03-12 10:36
2003.03.27
Векторная графика


1-87996
radion
2003-03-13 21:54
2003.03.27
какой командой можно открыть новую форму?


14-88156
Supreme 2
2003-03-12 15:00
2003.03.27
Соц. опрос:


3-87877
Roki
2003-03-11 13:08
2003.03.27
Как запретить удаление записи?