🗊Презентация Анимация в WinForms

Нажмите для полного просмотра!
Анимация в WinForms, слайд №1Анимация в WinForms, слайд №2Анимация в WinForms, слайд №3Анимация в WinForms, слайд №4Анимация в WinForms, слайд №5Анимация в WinForms, слайд №6Анимация в WinForms, слайд №7Анимация в WinForms, слайд №8Анимация в WinForms, слайд №9Анимация в WinForms, слайд №10Анимация в WinForms, слайд №11Анимация в WinForms, слайд №12Анимация в WinForms, слайд №13Анимация в WinForms, слайд №14Анимация в WinForms, слайд №15Анимация в WinForms, слайд №16Анимация в WinForms, слайд №17Анимация в WinForms, слайд №18Анимация в WinForms, слайд №19Анимация в WinForms, слайд №20Анимация в WinForms, слайд №21Анимация в WinForms, слайд №22Анимация в WinForms, слайд №23Анимация в WinForms, слайд №24Анимация в WinForms, слайд №25Анимация в WinForms, слайд №26

Содержание

Вы можете ознакомиться и скачать презентацию на тему Анимация в WinForms. Доклад-сообщение содержит 26 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Анимация в WinForms
Необходимо заставить кусок текста вращаться в окне About приложения Windows Forms.
Создайте таймер, который срабатывает периодически
Когда таймер сработает, воспользуйтесь обработчиком событий для вычисления некоторых деталей анимации, таких как новый угол поворота. Затем сделайте недействительным все окно либо его часть.
Сразу после этого Windows попросит окно перерисовать свое содержимое, запустив специальный код рисования.
В коде рисования визуализируйте повернутый текст.
Описание слайда:
Анимация в WinForms Необходимо заставить кусок текста вращаться в окне About приложения Windows Forms. Создайте таймер, который срабатывает периодически Когда таймер сработает, воспользуйтесь обработчиком событий для вычисления некоторых деталей анимации, таких как новый угол поворота. Затем сделайте недействительным все окно либо его часть. Сразу после этого Windows попросит окно перерисовать свое содержимое, запустив специальный код рисования. В коде рисования визуализируйте повернутый текст.

Слайд 2





Возникающие проблемы
Рисуются пиксели, а не элементы управления
Подразумевается единственная анимация
Частота кадров анимации фиксирована
Сложность кода анимации растет в геометрической прогрессии
Описание слайда:
Возникающие проблемы Рисуются пиксели, а не элементы управления Подразумевается единственная анимация Частота кадров анимации фиксирована Сложность кода анимации растет в геометрической прогрессии

Слайд 3





Анимация на основе свойств
Часто анимацию воспринимают как последовательность кадров. Чтобы выполнить анимацию, эти кадры отображаются друг за другом, подобно мультипликации. В WPF используется совершенно другая модель. По сути, анимация WPF — это просто способ модифицировать значение свойства зависимости через интервалы времени.
Описание слайда:
Анимация на основе свойств Часто анимацию воспринимают как последовательность кадров. Чтобы выполнить анимацию, эти кадры отображаются друг за другом, подобно мультипликации. В WPF используется совершенно другая модель. По сути, анимация WPF — это просто способ модифицировать значение свойства зависимости через интервалы времени.

Слайд 4





Классы анимации
Линейная интерполяция – последовательное изменение свойств от начального до конечного значения. Например, DoubleAnimation и ColorAnimation, иными словами классы линейно интерполяции носят имя ИмяТипаAnimation
Анимация ключевого кадра – применяется для изменение определенных типов данных, таких как строки и объекты, при этом, изменение происходит скачкообразно. Все классы ключевого кадра носят имя в формате ИмяТипаAnimationUsingKeyFrames — например, StringAnimationUsingKeyFrames и ObjectAnimationUsingKeyFrames.
Анимация на основе пути – модифицирует значение в соответствии с фигурой, описанной в объекте PathGeometry, и в первую очередь применяется для перемещения элемента по некоторому пути. Классы для анимации на основе пути имеют имена в стиле ИмяТипаAnimationUsingPath, например, DoubleAnimationUsingPath или PointAnimationUsingPath.
Описание слайда:
Классы анимации Линейная интерполяция – последовательное изменение свойств от начального до конечного значения. Например, DoubleAnimation и ColorAnimation, иными словами классы линейно интерполяции носят имя ИмяТипаAnimation Анимация ключевого кадра – применяется для изменение определенных типов данных, таких как строки и объекты, при этом, изменение происходит скачкообразно. Все классы ключевого кадра носят имя в формате ИмяТипаAnimationUsingKeyFrames — например, StringAnimationUsingKeyFrames и ObjectAnimationUsingKeyFrames. Анимация на основе пути – модифицирует значение в соответствии с фигурой, описанной в объекте PathGeometry, и в первую очередь применяется для перемещения элемента по некоторому пути. Классы для анимации на основе пути имеют имена в стиле ИмяТипаAnimationUsingPath, например, DoubleAnimationUsingPath или PointAnimationUsingPath.

Слайд 5





Классы анимации
В конечном итоге, вот что можно обнаружить в пространстве имен System.Windows.Media.Animation:
17 классов использующих анимацию методом интерполяции;
22 класса использующих анимацию ключевого кадра;
3 класса использующих анимацию на основе пути.
Описание слайда:
Классы анимации В конечном итоге, вот что можно обнаружить в пространстве имен System.Windows.Media.Animation: 17 классов использующих анимацию методом интерполяции; 22 класса использующих анимацию ключевого кадра; 3 класса использующих анимацию на основе пути.

Слайд 6





Анимация в коде
Описание слайда:
Анимация в коде

Слайд 7





Время жизни анимации
Формально анимации WPF являются временными, а это означает, что они в действительности не изменяют значения лежащего в основе свойства. Пока анимация активна, она просто переопределяет значение свойства. 
Однонаправленная анимация (как анимация роста кнопки) остается активной и после завершения ее работы. Это объясняется тем, что анимация должна удерживать ширину кнопки в новом размере. Это может привести к неожиданной проблеме, а именно: попытка модифицировать значение свойства в коде после завершения анимации никакого эффекта не дает. Причина в том, что код просто присваивает свойству новое локальное значение, но анимированное значение имеет приоритет перед ним.
Описание слайда:
Время жизни анимации Формально анимации WPF являются временными, а это означает, что они в действительности не изменяют значения лежащего в основе свойства. Пока анимация активна, она просто переопределяет значение свойства. Однонаправленная анимация (как анимация роста кнопки) остается активной и после завершения ее работы. Это объясняется тем, что анимация должна удерживать ширину кнопки в новом размере. Это может привести к неожиданной проблеме, а именно: попытка модифицировать значение свойства в коде после завершения анимации никакого эффекта не дает. Причина в том, что код просто присваивает свойству новое локальное значение, но анимированное значение имеет приоритет перед ним.

Слайд 8





Решение проблем
Создать анимацию, которая сбрасывает элементы в их исходное состояние, либо создание обратной анимации посредством установки свойства AutoReverse в true.
Изменить свойство FillBehavior. Изначально FillBehavior установлено в HoldEnd, а это означает, что когда анимация завершится, ее финальное значение будет применено к целевому свойству. Если изменить FillBehavior на Stop, то по завершении анимации свойство вернется к своему исходному значению.
Удалить объект анимации по ее завершении, обработав событие Completed объекта анимации.(widthAnimation.Completed += animation_Completed;)
Описание слайда:
Решение проблем Создать анимацию, которая сбрасывает элементы в их исходное состояние, либо создание обратной анимации посредством установки свойства AutoReverse в true. Изменить свойство FillBehavior. Изначально FillBehavior установлено в HoldEnd, а это означает, что когда анимация завершится, ее финальное значение будет применено к целевому свойству. Если изменить FillBehavior на Stop, то по завершении анимации свойство вернется к своему исходному значению. Удалить объект анимации по ее завершении, обработав событие Completed объекта анимации.(widthAnimation.Completed += animation_Completed;)

Слайд 9





Класс TimeLine
BeginTime - устанавливает задержку перед запуском анимации (как TimeSpan). Эта задержка добавляется к общему времени, так что пятисекундная анимация с пятисекундной задержкой займет в сумме десять секунд. Свойство BeginTime удобно для синхронизации разных анимаций, которые запускаются в одно и то же время, но должны выполнять свои действия последовательно.
Duration - устанавливает длительность времени выполнения анимации, от старта до финиша
Описание слайда:
Класс TimeLine BeginTime - устанавливает задержку перед запуском анимации (как TimeSpan). Эта задержка добавляется к общему времени, так что пятисекундная анимация с пятисекундной задержкой займет в сумме десять секунд. Свойство BeginTime удобно для синхронизации разных анимаций, которые запускаются в одно и то же время, но должны выполнять свои действия последовательно. Duration - устанавливает длительность времени выполнения анимации, от старта до финиша

Слайд 10





Класс TimeLine
SpeedRatio - увеличивает или уменьшает скорость анимации. Изначально SpeedRatio равно 1. Если его увеличить, то анимация завершится быстрее (например, SpeedRatio, равное 5, выполнит анимацию впятеро быстрее). Если уменьшить значение этого свойства, анимация замедлится (например, установка SpeedRatio в 0.5 приводит к получению анимации, выполняющейся вдвое дольше). Для получения того же результата можно также изменить свойство Duration анимации. Когда применяется задержка BeginTime, свойство SpeedRatio во внимание не принимается
Описание слайда:
Класс TimeLine SpeedRatio - увеличивает или уменьшает скорость анимации. Изначально SpeedRatio равно 1. Если его увеличить, то анимация завершится быстрее (например, SpeedRatio, равное 5, выполнит анимацию впятеро быстрее). Если уменьшить значение этого свойства, анимация замедлится (например, установка SpeedRatio в 0.5 приводит к получению анимации, выполняющейся вдвое дольше). Для получения того же результата можно также изменить свойство Duration анимации. Когда применяется задержка BeginTime, свойство SpeedRatio во внимание не принимается

Слайд 11





Класс TimeLine
AccelerationRatio, DecelerationRatio - делает анимацию нелинейной, так что она запускается медленно, затем происходит ускорение (за счет увеличения AccelerationRatio) либо замедление (при увеличении DecelerationRatio). Оба значения находятся в промежутке от 0 до 1 и начинаются с 0. Кроме того, сумма обоих величин не может превышать 1.
AutoReverse - если это свойство равно true, то анимация будет запущена в обратном порядке, как только завершится. Если увеличить SpeedRatio, оно будет применено как к прямому воспроизведению анимации, так и к обратному. Свойство BeginTime применяется только в самом начале анимации — задержки при запуске в обратном направлении не происходит.
Описание слайда:
Класс TimeLine AccelerationRatio, DecelerationRatio - делает анимацию нелинейной, так что она запускается медленно, затем происходит ускорение (за счет увеличения AccelerationRatio) либо замедление (при увеличении DecelerationRatio). Оба значения находятся в промежутке от 0 до 1 и начинаются с 0. Кроме того, сумма обоих величин не может превышать 1. AutoReverse - если это свойство равно true, то анимация будет запущена в обратном порядке, как только завершится. Если увеличить SpeedRatio, оно будет применено как к прямому воспроизведению анимации, так и к обратному. Свойство BeginTime применяется только в самом начале анимации — задержки при запуске в обратном направлении не происходит.

Слайд 12





Класс TimeLine
FillBehavior - определяет то, что произойдет по завершении анимации. Обычно свойство остается зафиксированным в конечном значении (FillBehavior.HoldEnd), но можно также выбрать возврат к исходному значению (FillBehavior.Stop)
RepeatBehavior - позволяет повторить анимацию заданное количество раз либо в течение указанного интервала времени.
Описание слайда:
Класс TimeLine FillBehavior - определяет то, что произойдет по завершении анимации. Обычно свойство остается зафиксированным в конечном значении (FillBehavior.HoldEnd), но можно также выбрать возврат к исходному значению (FillBehavior.Stop) RepeatBehavior - позволяет повторить анимацию заданное количество раз либо в течение указанного интервала времени.

Слайд 13





Раскадровка
Усовершенствованная временная шкала. Ее можно применять для группирования множества анимаций и, кроме того, она позволяет управлять воспроизведением анимации — приостанавливать ее, прекращать и изменять текущую позицию. Однако самым базовым средством, предлагаемым классом StoryBoard, является способность указывать на определенное свойство и определенный элемент, используя свойства TargetProperty и TargetName. Другими словами, раскадровка заполняет пробел между анимацией и свойством, для которого должна осуществляться анимация.
Описание слайда:
Раскадровка Усовершенствованная временная шкала. Ее можно применять для группирования множества анимаций и, кроме того, она позволяет управлять воспроизведением анимации — приостанавливать ее, прекращать и изменять текущую позицию. Однако самым базовым средством, предлагаемым классом StoryBoard, является способность указывать на определенное свойство и определенный элемент, используя свойства TargetProperty и TargetName. Другими словами, раскадровка заполняет пробел между анимацией и свойством, для которого должна осуществляться анимация.

Слайд 14





Пример
Описание слайда:
Пример

Слайд 15





Перекрывающиеся и синхронизированные анимации
Раскадровка предоставляет возможность изменять способ работы с перекрывающимися анимациями — другими словами, когда вторая анимация применяется к свойству, которое уже анимируется. Это делается через свойство BeginStoryboard.НаndoffBehavior.
Обычно, когда анимации перекрываются, то вторая переопределяет первую немедленно.
 Единственным альтернативным значением перечисления HandoffBehavior является Compose, которое приводит к объединению второй анимации с временной шкалой первой анимации.
Описание слайда:
Перекрывающиеся и синхронизированные анимации Раскадровка предоставляет возможность изменять способ работы с перекрывающимися анимациями — другими словами, когда вторая анимация применяется к свойству, которое уже анимируется. Это делается через свойство BeginStoryboard.НаndoffBehavior. Обычно, когда анимации перекрываются, то вторая переопределяет первую немедленно. Единственным альтернативным значением перечисления HandoffBehavior является Compose, которое приводит к объединению второй анимации с временной шкалой первой анимации.

Слайд 16





Пример
Описание слайда:
Пример

Слайд 17





Синхронизированные анимации
Класс Storyboard непрямо унаследован от TimeLineGroup, что дает ему возможность поддерживать более одной анимации. Лучше всего то, что эти анимации управляются как единая группа — в том смысле, что запускаются одновременно.
Описание слайда:
Синхронизированные анимации Класс Storyboard непрямо унаследован от TimeLineGroup, что дает ему возможность поддерживать более одной анимации. Лучше всего то, что эти анимации управляются как единая группа — в том смысле, что запускаются одновременно.

Слайд 18





Пример
Описание слайда:
Пример

Слайд 19





Управление воспроизведением
PauseStoryboard - приостанавливает воспроизведение анимации и сохраняет ее в текущей позиции
Resumestoryboard - возобновляет воспроизведение приостановленной анимации
StopStoryboard - останавливает воспроизведение анимации и сбрасывает ее часы в начало
Описание слайда:
Управление воспроизведением PauseStoryboard - приостанавливает воспроизведение анимации и сохраняет ее в текущей позиции Resumestoryboard - возобновляет воспроизведение приостановленной анимации StopStoryboard - останавливает воспроизведение анимации и сбрасывает ее часы в начало

Слайд 20





Управление воспроизведением
SeekStoryboard - перепрыгивает в определенную точку временной шкалы анимации. Если анимация в данный момент воспроизводится, то воспроизведение продолжается с новой позиции. Если же анимация приостановлена, она остается приостановленной.
SetStoryboardSpeedRatio - Изменяет SpeedRatio всей раскадровки (а не только одной анимации внутри нее)
Описание слайда:
Управление воспроизведением SeekStoryboard - перепрыгивает в определенную точку временной шкалы анимации. Если анимация в данный момент воспроизводится, то воспроизведение продолжается с новой позиции. Если же анимация приостановлена, она остается приостановленной. SetStoryboardSpeedRatio - Изменяет SpeedRatio всей раскадровки (а не только одной анимации внутри нее)

Слайд 21





Управление воспроизведением
SkipStoryboardToFill - перемещает раскадровку в конец ее временной шкалы. Этот период известен как область заполнения (fill region). Для стандартной анимации, у которой свойство FillBehavior установлено в HoldEnd, анимация продолжается для удержания финального значения.
Removestoryboard - Удаляет раскадровку, прерывая все текущие выполняющиеся анимации и возвращая свойства в исходные, установленные последний раз значения. Это дает тот же эффект, что и вызов BeginAnimation() для соответствующего элемента с null-объектом анимации
Описание слайда:
Управление воспроизведением SkipStoryboardToFill - перемещает раскадровку в конец ее временной шкалы. Этот период известен как область заполнения (fill region). Для стандартной анимации, у которой свойство FillBehavior установлено в HoldEnd, анимация продолжается для удержания финального значения. Removestoryboard - Удаляет раскадровку, прерывая все текущие выполняющиеся анимации и возвращая свойства в исходные, установленные последний раз значения. Это дает тот же эффект, что и вызов BeginAnimation() для соответствующего элемента с null-объектом анимации

Слайд 22





Пример
Описание слайда:
Пример

Слайд 23





Пример
Описание слайда:
Пример

Слайд 24


Анимация в WinForms, слайд №24
Описание слайда:

Слайд 25


Анимация в WinForms, слайд №25
Описание слайда:

Слайд 26


Анимация в WinForms, слайд №26
Описание слайда:



Похожие презентации
Mypresentation.ru
Загрузить презентацию