Здравствуйте. Помогите сделать универсальный скрипт для вещественной переменной для анимации изображения.
Попробовал сделать на базе скрипта с цветом, но не получается...
Задача: при 0 объект не движется. При >0 объект движется
var
aPressure: Integer;
begin
if Sender is TM_Object then // проверяем, что Sender это объект
with Sender as TM_Object do // приводим Sender к типу "TM_Object"
begin
{ умножаем значение переменной на 10 и округляем до целого }
aPressure := Round(Value * 10);
{ далее работаем с переменной как с целым числом }
case aPressure of
// если значение переменной связанной с объектом равно:
if AsInt > 0 then
AnimSpeed := 16 // запустить анимацию
else // иначе
AnimSpeed := 0; // остановить анимацию
end;
end;
end.
Здравствуйте.
У класса "TM_Object (https://simple-scada.com/help/script/tm_object.html)" нет свойства AnimSpeed. Данное свойство есть только у изображений "TM_Image". Поэтому Sender нужно приводить именно к типу "TM_Image". Исправленный скрипт ниже. Если не разберетесь, то пришлите текущую версию проекта на support@simple-scada.com и укажите скрипт, который нужно проверить.
var
aPressure: Integer;
begin
if Sender is TM_Image then // проверяем, что Sender это изображение
with Sender as TM_Image do // приводим Sender к типу "TM_Image"
begin
aPressure := Round(Value * 10);
if aPressure > 0 then
AnimSpeed := 16 // запустить анимацию
else // иначе
AnimSpeed := 0; // остановить анимацию
end;
end.