Clock Classe

Définition

Tient à jour l’état de minutage au moment de l’exécution pour Timeline.

public ref class Clock : System::Windows::Threading::DispatcherObject
public class Clock : System.Windows.Threading.DispatcherObject
type Clock = class
    inherit DispatcherObject
Public Class Clock
Inherits DispatcherObject
Héritage
Dérivé

Remarques

Un Timeline, par lui-même, ne fait rien d’autre que décrire un segment de temps. Il s’agit de Clock l’objet de la chronologie qui effectue le travail réel : il gère l’état d’exécution lié au minutage pour la chronologie.

Dans la plupart des cas, une horloge est créée automatiquement pour votre chronologie. Lorsque vous animez à l’aide d’une Storyboard ou de la BeginAnimation méthode, les horloges sont automatiquement créées pour vos chronologies et animations et appliquées à leurs propriétés ciblées. Pour obtenir des exemples, consultez Guide pratique pour animer une propriété à l’aide d’un Storyboard et comment : animer une propriété sans utiliser de storyboard.

Vous pouvez également créer une Clock méthode explicitement à l’aide de la CreateClock méthode. Dans les scénarios gourmands en performances, tels que l’animation d’un grand nombre d’objets similaires, la gestion de votre propre Clock utilisation peut offrir des avantages en matière de performances.

Les horloges sont organisées dans les arborescences qui correspondent à la structure de l’arborescence Timeline d’objets à partir de laquelle elles sont créées. L’horloge racine d’une telle arborescence de minutage peut être manipulée de manière interactive (suspendue, reprise, arrêtée, etc.) en récupérant son Controller. Les horloges non racines ne peuvent pas être contrôlées directement.

Une fois créée, une horloge ne peut pas être modifiée (mais elle peut être manipulée).

Utilisation d’une chronologie en tant que minuteur

L’horloge d’une chronologie progresse uniquement lorsqu’un gestionnaire d’événements lui est associé ou (dans le cas d’un AnimationClock objet) associé à une propriété. Pour cette raison (et d’autres), il n’est pas recommandé d’utiliser un Timeline minuteur comme minuteur.

Notes pour les héritiers

Les classes dérivées doivent être implémentées GetCurrentTimeCore() si elles souhaitent modifier la façon dont les flux de temps pour cette horloge. Les classes dérivées peuvent être effectuées pour effectuer des tâches supplémentaires lorsque l’horloge répète, ignore, recherche, commence, suspend, reprend ou arrête en remplaçant les méthodes et SpeedChanged()Stopped() les DiscontinuousTimeMovement()méthodes.

Constructeurs

Clock(Timeline)

Initialise une nouvelle instance de la classe Clock à l'aide du Timeline spécifié en tant que modèle. Le nouvel objet Clock n'a pas d'enfants.

Propriétés

Controller

Obtient un ClockController qui peut être utilisé pour démarrer, suspendre, reprendre, rechercher, ignorer, arrêter ou supprimer ce Clock.

CurrentGlobalSpeed

Obtient la fréquence à laquelle l’heure de l’horloge s’écoule actuellement par rapport à l’heure réelle.

CurrentGlobalTime

Obtient l’heure globale actuelle, telle qu’établie par le système de minutage WPF.

CurrentIteration

Obtient l'itération actuelle de cette horloge.

CurrentProgress

Obtient la progression actuelle de ce Clock dans son itération actuelle.

CurrentState

Obtient une valeur indiquant si l’horloge est actuellement Active, Filling ou Stopped.

CurrentTime

Obtient l'heure actuelle de cette horloge dans son itération actuelle.

Dispatcher

Obtient le Dispatcher associé à DispatcherObject.

(Hérité de DispatcherObject)
HasControllableRoot

Obtient une valeur qui indique si ce Clock fait partie d'une arborescence d'horloge contrôlable.

IsPaused

Obtient une valeur qui indique si ce Clock ou un de ses parents est suspendu.

NaturalDuration

Obtient la durée naturelle du Timeline de cette horloge.

Parent

Obtient l'horloge qui est le parent de cette horloge.

Timeline

Obtient le Timeline à partir duquel ce Clock a été créé.

Méthodes

CheckAccess()

Détermine si le thread appelant a accès à ce DispatcherObject.

(Hérité de DispatcherObject)
DiscontinuousTimeMovement()

Est appelé, en cas d'implémentation dans une classe dérivée, à chaque répétition, ignorance ou recherche d'une horloge.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetCanSlip()

Retourne si le Clock possède sa propre source externe pour l'heure, laquelle peut requérir une synchronisation avec le système de minuterie.

GetCurrentTimeCore()

Obtient l'heure actuelle de cette horloge dans son itération actuelle.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
SpeedChanged()

Est appelé, en cas d'implémentation dans une classe dérivée, à chaque démarrage, ignorance, suspension, reprise d'une horloge ou lorsque le SpeedRatio de l'horloge est modifié.

Stopped()

Est appelé, en cas d'implémentation dans une classe dérivée, à chaque arrêt d'une horloge à l'aide de la méthode Stop().

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)
VerifyAccess()

Garantit que le thread appelant a accès à DispatcherObject.

(Hérité de DispatcherObject)

Événements

Completed

Se produit lorsque cette horloge a entièrement terminé son cycle.

CurrentGlobalSpeedInvalidated

Se produit quand la vitesse de l’horloge est mise à jour.

CurrentStateInvalidated

Se produit quand la propriété CurrentState de l’horloge est mise à jour.

CurrentTimeInvalidated

Se produit lorsque le CurrentTime de cette horloge devient non valide.

RemoveRequested

Se produit lorsque la méthode Remove() est appelée sur ce Clock ou l'une de ses horloges parentes.

S’applique à