Код двойной анимации:
Копировать Выделить всё
Перем ДФ, АнимацияВращение, АнимацияМасштаб;
Процедура Кнопка1_Нажатие() Экспорт
АнимацияВращение.Запустить();
АнимацияМасштаб.Запустить();
КонецПроцедуры
Процедура Кнопка2_Нажатие() Экспорт
АнимацияВращение.Пауза();
АнимацияМасштаб.Пауза();
КонецПроцедуры
Процедура Кнопка3_Нажатие() Экспорт
АнимацияВращение.Завершить();
АнимацияМасштаб.Завершить();
КонецПроцедуры
Процедура Кнопка4_Нажатие() Экспорт
АнимацияВращение.Отменить();
КонецПроцедуры
ПодключитьВнешнююКомпоненту(ОбъединитьПути(Новый Файл(ТекущийСценарий().Источник).Путь, "DeclarativeForms.dll"));
ДФ = Новый ДекларативныеФормы();
Форма1 = ДФ.Форма;
Форма1.НачальнаяШирина = 400;
Форма1.НачальнаяВысота = 400;
Кнопка1 = Форма1.ДобавитьДочерний(ДФ.Кнопка());
Кнопка1.Текст = "Запустить";
Кнопка1.Нажатие = ДФ.Действие(ЭтотОбъект, "Кнопка1_Нажатие");
Кнопка2 = Форма1.ДобавитьДочерний(ДФ.Кнопка());
Кнопка2.Текст = "Пауза";
Кнопка2.Нажатие = ДФ.Действие(ЭтотОбъект, "Кнопка2_Нажатие");
Кнопка3 = Форма1.ДобавитьДочерний(ДФ.Кнопка());
Кнопка3.Текст = "Завершить";
Кнопка3.Нажатие = ДФ.Действие(ЭтотОбъект, "Кнопка3_Нажатие");
Кнопка4 = Форма1.ДобавитьДочерний(ДФ.Кнопка());
Кнопка4.Текст = "Отменить вращение";
Кнопка4.Нажатие = ДФ.Действие(ЭтотОбъект, "Кнопка4_Нажатие");
Блок1 = Форма1.ДобавитьДочерний(ДФ.Блок());
Блок1.Стиль.Границы = ДФ.Границы(2, ДФ.СтильГраницы.Сплошная, ДФ.Цвет.Прозрачный);
Блок1.Стиль.Ширина = 45;
Блок1.Стиль.Высота = 45;
Блок1.Стиль.Отступ = ДФ.Отступ(25, , , 25);
Кадр1 = ДФ.Стиль();
Кадр1.ОтступСлева = 10;
Кадр1.Сдвиг = ДФ.Поворот(0);
Кадр2 = ДФ.Стиль();
Кадр2.ОтступСлева = 300;
Кадр2.Сдвиг = ДФ.Поворот(180);
Кадры1 = ДФ.Кадры();
Кадры1.Добавить(Кадр1);
Кадры1.Добавить(Кадр2);
Блок2 = Блок1.ДобавитьДочерний(ДФ.Блок());
Блок2.Стиль.Позиция = ДФ.Позиция.Относительно;
Блок2.Стиль.Ширина = 45;
Блок2.Стиль.Высота = 45;
Блок2.Стиль.Границы = ДФ.Границы(2, ДФ.СтильГраницы.Сплошная, ДФ.Цвет.Красный);
Блок2.Стиль.РадиусГраницы = ДФ.РадиусГраницы(5, 5, 5, 5);
Блок2.Стиль.ЦветТекста = ДФ.Цвет.Зеленый;
Блок2.ДобавитьДочерний(ДФ.Абзац()).Текст = "Блок2";
Кадр3 = ДФ.Стиль();
Кадр3.ЦветФона = ДФ.Цвет.Зеленый;
Кадр3.Сдвиг = ДФ.Масштаб(1, 1);
Кадр3.Смещение = 0;
Кадр4 = ДФ.Стиль();
Кадр4.ЦветФона = ДФ.Цвет.Желтый;
Кадр4.Сдвиг = ДФ.Масштаб(1.05, 1.05);
Кадр4.Смещение = 0.1;
Кадр5 = ДФ.Стиль();
Кадр5.ЦветФона = ДФ.Цвет.Желтый;
Кадр5.Сдвиг = ДФ.Масштаб(1.4, 1.4);
Кадр5.Смещение = 0.7;
Кадр6 = ДФ.Стиль();
Кадр6.ЦветФона = ДФ.Цвет.Красный;
Кадр6.Сдвиг = ДФ.Масштаб(1.5, 1.5);
Кадр6.Смещение = 1;
Кадры2 = ДФ.Кадры();
Кадры2.Добавить(Кадр3);
Кадры2.Добавить(Кадр4);
Кадры2.Добавить(Кадр5);
Кадры2.Добавить(Кадр6);
ПараметрыАнимации1 = ДФ.ПараметрыАнимации(3000,
ДФ.ФункцияСинхронизации.МедленноВначалеВконце,
600,
1000,
ДФ.НаправлениеАнимации.Чередовать,
ДФ.ЗаливкаАнимации.Назад,
1000);
АнимацияВращение = Блок1.Анимация(Кадры1, ПараметрыАнимации1);
АнимацияМасштаб = Блок2.Анимация(Кадры2, ПараметрыАнимации1);
Форма1.Открыть();