TAnimatedImage Component

Unit
Animate

Description
Компонента предназначена для отображения последовательно сменяющих друг друга графических изображений в форме, что создает иллюзию движения. Рисунок, отображаемый в форме, задается свойством Glyph. Это битовое изображение, которое должно содержать набор последовательных рисунков (следующих слева направо или сверху вниз, в зависимости от значения свойства Orientation), число которых задается свойством NumGlyphs. Номер рисунка, отображаемого в настоящий момент, во время выполнения можно определить по значению свойства GlyphNum. Вы можете также задать это значение в дизайнере. Если свойство Active установлено в True, то изображения сменяют друг друга с частотой, задаваемой свойством Interval.

Свойство Opaque определяет, будет ли компонента заполнять фон под картинкой цветом Color или же она будет полностью прозрачной.
Компонета также включает в себя свойства, аналогичные свойствам TImage.
Вы можете также использовать компоненту TAnimatedImage для помещения на форму прозрачных неподвижных изображений, например, при наложении изображений друг на друга.

С помощью редактора компоненты TAnimatedImage Вы можете загрузить в нее последовательность битовых изображений из файла с "анимированным курсором" Windows (ANI-файла).



Примеры работы и некоторые интересные свойства и методы.

Declaration
property Glyph: TBitmap;

Description
Свойство содержит битовое изображение, используемое для анимации. Это изображение должно содержать набор последовательных рисунков (следующих слева направо или сверху вниз, в зависимости от значения свойства Orientation
), число которых задается свойством NumGlyphs.



Declaration
property NumGlyphs: Integer;

Description
Свойство определяет число рисунков, которое содержит битовое изображение, заданное свойством Glyph. Это битовое изображение должно представлять из себя набор рисунков равной ширины или высоты, в зависимости от их расположения, помещенных в одно битовое изображение формата .BMP и расположенных горизонтально или вертикально в последовательности, необходимой для анимации.



Declaration
property Orientation: TGlyphOrientation;

Description
Свойство задает расположение кадров в исходном битовом изображении, заданном свойством Glyph — по горизонтали (слева направо) или по вертикали (сверху вниз). По умолчанию — горизонтальное расположение кадров (goHorizontal).



Declaration

type
TGlyphOrientation = (goHorizontal, goVertical);
Description
Тип задает возможные значения для свойства Orientation компоненты TAnimatedImage. Значение goHorizontal задает горизонтальное (слева направо) чередование кадров, значение goVertical — вертикальное (сверху вниз).



Declaration
property GlyphNum: Integer;

Description
Свойство определяет номер текущего отображаемого рисунка в компоненте в том случае, если свойство Active установлено в значение False.
Если свойство InactiveGlyph установлено в значение, отличное от -1, то значение свойства GlyphNum игнорируется.



Declaration
property InactiveGlyph: Integer;

Description
Если значение этого свойства отлично от -1, то в неактивном состоянии компонента TAnimatedImage всегда будет отображать рисунок, соответствующий индексу InactiveGlyph (значение свойства GlyphNum игнорируется). Кроме этого, рисунок, имеющий индекс InactiveGlyph никогда не используется при анимации, т.е. он пропускается при прокрутке изображений.

Вы можете использовать это свойство, когда хотите использовать битовое изображение, содержащее "специальную" картинку для отображения в неактивном состоянии, которая не должна участвовать в анимации.



Declaration
property Interval: Word;

Description
Свойство определяет временной интервал (в милисекундах), с которым происходит смена изображений в компоненте.
Для TAnimatedImage (при Active = True) и TRxDice (при Rotate = True) это частота смены битовых изображений.

Для TSecretPanel свойство определяет скорость "прокрутки" текста при значении свойства Active = True.
Для TRxTrayIcon (только в 32-битной версии RX) — это частота смены иконок в tray-области панели задач при установленном в True значении свойства Animated.


Declaration
property Active: Boolean;

Description
Свойство определяет, будет ли автоматически с интервалом, заданным свойством Interval, меняться номер отображаемого битового изображения в компоненте. Если это свойство имеет значение False, то смены изображений не происходит, а номер текущего отображаемого рисунка задается свойством GlyphNum.


Declaration
property Opaque: Boolean;

Description
Свойство определяет, будет ли компонента TAnimatedImage заполнять фон под картинкой цветом Color или же она будет полностью прозрачной.
При установке свойства TransparentColor в значение clNone свойство Opaque эффекта не имеет.