Delphi. Firemonkey(FMX). Анимация-Animation



Сегодня мы изучим анимацию в FireMonkey на примере обычной кнопки. FMX дает нам на порядок больше возможностей по созданию дизайна наших приложений по сравнению со своим "отцом" VCL. Казалось бы, что может быть проще, чем плавно(Плавно!) изменить высоту кнопки при наведении на нее курсором, код-то простейший! Но код - это время, а время - деньги. А в firemonkey все это можно сделать через родной и знакомый object inspector. Причем сделать это очень просто.

Итак начнем.

1. File->New->FireMonkey Desktop Application Delphi->HD Firemonkey Application
2. Кидаем TButton на форму.
3.Находим свойство Height. Видим значек, который показывает, что для данного свойства можно создать анимацию.
Нажимаем и выбираем пункт Create New TFloatAnimation.



4.Вы можете заметить, что наша анимация появилась в Structure. Кнопка является контейнером для этой анимации. Напомню, что в firemonkey все компоненты могут являться контейнерами для анимаций, компонентов и т.д.



5.Присваиваем следующим свойствам анимации следующие значения и запускаем программу.

Duration = 0,5
Enabled = True
Inverse = True
StartValue = 22
StopValue = 50
Trigger = IsMouseOver=true
TriggerInverse = IsMouseOver=false

Все работает, теперь разберем свойства анимации.

AnimationType - определение вида воспроизводимой анимации.

AutoReverse - свойство, которое определяет будет ли анимация воспроизводиться в обратном направлении, после достижения конечного значения (StopValue)

Delay - задержка(секунды) до начала воспроизведения анимации

Duration - длительность анимации(секунды)

Interpolation - вид расчета промежуточных значений свойства. Для обычных анимаций хватает линейной интерполяции (itLinear)

Inverse - будет ли анимация воспроизводиться обратно

Loop - будет ли анимация зациклена

PropertyName - свойство для которого будет создана анимация

StartFromCurrent - воспроизведение анимации с текущего значения свойства или от записанного в StartValue

StartValue и StopValue - начальное и конечное значение свойства.

Trigger - событие отвечающее за процесс анимации

TriggerInverse - событие отвечающее за момент, когда анимация пойдет в обратную сторону.

TFloatAnimation - это самый часто используемый в FMX тип анимации. Но этот тип не единственный.

На вкладке Animations в палитре компонентов можно найти еще несколько видов анимаций. Например TColorAnimation - компонент, который позволяет создать анимацию плавного цветового перехода. Главное поместить этот компонент в контейнер(другой компонент).

Чуть позже мы продолжим изучение анимаций. Удачи!
Теги:
Firemonkey, FMX, Анимация, Animation
Добавлено: 23 Февраля 2015 08:26:24 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...