1
Ваши вопросы / Re: Скрипт через некоторое время перестает менять объект.
« : 22 Июля 2024, 12:43:08 »
Проверил один из проблемных скриптов (выкладываю его код сюда).
Не вижу грубых ошибок и вероятных рекурсий.
Может опытный взгляд поможет?
Но да - он привязан к переменной - которая измеряет время до конца (или от начала) процесса в секундах. Отчего и часто вызывается.
Не вижу грубых ошибок и вероятных рекурсий.
Может опытный взгляд поможет?
Но да - он привязан к переменной - которая измеряет время до конца (или от начала) процесса в секундах. Отчего и часто вызывается.
Код: (delphi)
var
time: TDateTime;
textVOH, textVOM, textVOS, textVO: TM_Field;
begin
textVOH := GetTemplateObject('txtAC_1M_3FLAP_2H_1AI_WndTimeLeftHours') as TM_Field;
textVOM := GetTemplateObject('txtAC_1M_3FLAP_2H_1AI_WndTimeLeftMinutes') as TM_Field;
textVOS := GetTemplateObject('txtAC_1M_3FLAP_2H_1AI_WndTimeLeftSeconds') as TM_Field;
textVO := GetTemplateObject('txtAC_1M_3FLAP_2H_1AI_WndTimeLeft') as TM_Field;
if (textVO <> nil) then
begin
with (Sender as TM_Object) do
if (GetVariableByID(textVO.Variable.ID).Value <> 0) then
begin
time := SecondsToDateTime(GetVariableByID(textVO.Variable.ID).Value);
textVOH.Text := inttostr(time.HourOf);
textVOM.Text := inttostr(time.MinuteOf);
textVOS.Text := inttostr(time.SecondOf);
end
else
begin
textVOH.Text := '0';
textVOM.Text := '0';
textVOS.Text := '0';
end;
end;
end.