Главная страница
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
3-87871
Alex Chu
2003-03-11 12:45
2003.03.27
триггер interbase


6-88122
Nicky
2003-02-06 20:11
2003.03.27
не могу пробиться через прокси


6-88099
Ундервуд
2003-02-04 12:50
2003.03.27
Обмен сообщениями из локалки в и-нет


8-88079
2ut
2002-12-19 23:41
2003.03.27
Вопрос скорее к мастерам!?


1-88062
Верещагин
2003-03-15 12:44
2003.03.27
Fast Report