Clock Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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. |