Comparteix a través de


Clock Clase

Definición

Mantiene el estado de sincronización en tiempo de ejecución para una clase 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
Herencia
Derivado

Comentarios

Un Timeline, por sí mismo, no hace nada más que describir un segmento de tiempo. Es el objeto de la escala de Clock tiempo que realiza el trabajo real: mantiene el estado en tiempo de ejecución relacionado con el tiempo de ejecución para la escala de tiempo.

En la mayoría de los casos, se crea automáticamente un reloj para la escala de tiempo. Cuando se anima mediante o Storyboard el BeginAnimation método , los relojes se crean automáticamente para las escalas de tiempo y las animaciones y se aplican a sus propiedades de destino. Para obtener ejemplos, vea How to: Animate a Property by Using a Storyboard y How to: Animate a Property Without Using a Storyboard.

También puede crear un elemento Clock explícitamente mediante el CreateClock método . En escenarios con un uso intensivo del rendimiento, como animar un gran número de objetos similares, administrar su propio Clock uso puede proporcionar ventajas de rendimiento.

Los relojes se organizan en árboles que coinciden con la estructura del árbol de objetos desde el Timeline que se crean. El reloj raíz de este árbol de control de tiempo se puede manipular interactivamente (pausado, reanudado, detenido, etc.) recuperando su Controller. Los relojes no raíz no se pueden controlar directamente.

Una vez creado, no se puede modificar un reloj (pero se puede manipular).

Usar una escala de tiempo como temporizador

El reloj de una escala de tiempo solo progresa cuando hay un controlador de eventos asociado a él o (en el caso de un AnimationClock objeto) está asociado a una propiedad . Por este motivo (y otros), no se recomienda usar como Timeline temporizador.

Notas a los desarrolladores de herederos

Las clases derivadas deben implementarse GetCurrentTimeCore() si quieren modificar cómo fluye el tiempo de este reloj. Las clases derivadas se pueden realizar para realizar trabajo adicional cuando el reloj se repite, omite, busca, comienza, pausa, reanuda o detiene reemplazando los DiscontinuousTimeMovement()métodos , SpeedChanged()y Stopped() .

Constructores

Clock(Timeline)

Inicializa una nueva instancia de la clase Clock utilizando la propiedad Timeline especificada como plantilla. El nuevo objeto Clock no tiene ningún objeto secundario.

Propiedades

Controller

Obtiene una clase ClockController que se puede usar para iniciar, pausar, reanudar, buscar, omitir, detener o quitar esta clase Clock.

CurrentGlobalSpeed

Obtiene la velocidad a la que la hora del reloj avanza actualmente, en comparación con la hora real.

CurrentGlobalTime

Obtiene la hora global actual, según lo establecido por el sistema de control de tiempo de WPF.

CurrentIteration

Obtiene la iteración actual de este reloj.

CurrentProgress

Obtiene el progreso actual de este objeto Clock en su iteración actual.

CurrentState

Obtiene un valor que indica si el reloj es actualmente Active, Filling o Stopped.

CurrentTime

Obtiene la hora actual de este reloj en su iteración actual.

Dispatcher

Obtiene el objeto Dispatcher al que está asociado DispatcherObject.

(Heredado de DispatcherObject)
HasControllableRoot

Obtiene un valor que indica si Clock forma parte de un árbol de relojes que se puede controlar.

IsPaused

Obtiene un valor que indica si este objeto Clock o alguno de sus objetos primarios está en pausa.

NaturalDuration

Obtiene la duración natural de la propiedad Timeline de este reloj.

Parent

Obtiene el reloj que es el objeto primario de este reloj.

Timeline

Obtiene la propiedad Timeline a partir de la que se creó Clock.

Métodos

CheckAccess()

Determina si el subproceso de la llamada tiene acceso a DispatcherObject.

(Heredado de DispatcherObject)
DiscontinuousTimeMovement()

Cuando se implementa en una clase derivada, se invocará siempre que un reloj se repita, se omita o se busque.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetCanSlip()

Devuelve si Clock tiene su propio origen externo de tiempo, que quizá requiera la sincronización con el sistema de control de tiempo.

GetCurrentTimeCore()

Obtiene la hora actual de este reloj en su iteración actual.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
SpeedChanged()

Cuando se implementa en una clase derivada, se invocará siempre que un reloj se inicie, se omita, se pause, se reanude o cuando se modifique la propiedad SpeedRatio del reloj.

Stopped()

Cuando se implementa en una clase derivada, se invocará siempre que un reloj se detenga mediante el método Stop().

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
VerifyAccess()

Exige que el subproceso de la llamada tenga acceso a DispatcherObject.

(Heredado de DispatcherObject)

Eventos

Completed

Se produce cuando este reloj ha dejado completamente de ejecutarse.

CurrentGlobalSpeedInvalidated

Se produce cuando se actualiza la velocidad del reloj.

CurrentStateInvalidated

Se produce cuando la propiedad CurrentState del reloj se actualiza.

CurrentTimeInvalidated

Se produce cuando la propiedad CurrentTime de este reloj deja de ser válida.

RemoveRequested

Se produce cuando se llama al método Remove() en Clock o en uno de sus relojes primarios.

Se aplica a