Clock Classe

Definição

Mantém o estado de temporização em tempo de execução para um 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
Herança
Derivado

Observações

A Timeline, por si só, na verdade não faz nada além de descrever um segmento de tempo. É o objeto da Clock linha temporal que faz o verdadeiro trabalho: mantém o estado de execução relacionado com o tempo para a linha temporal.

Na maioria dos casos, um relógio é criado automaticamente para a sua linha temporal. Quando animas usando um Storyboard ou o BeginAnimation método, os relógios são automaticamente criados para as tuas linhas temporais e animações e aplicados às suas propriedades alvo. Para exemplos, veja Como: Animar uma Propriedade Usando um Storyboard e Como: Animar uma Propriedade Sem Usar um Storyboard.

Também pode criar um Clock explicitamente usando o CreateClock método. Em cenários intensivos em desempenho, como animar grandes quantidades de objetos semelhantes, gerir o seu próprio Clock uso pode trazer benefícios de desempenho.

Os relógios estão dispostos em árvores que correspondem à estrutura da Timeline árvore do objeto a partir da qual são criados. O relógio raiz de tal árvore de temporização pode ser manipulado interativamente (pausado, retomado, parado, e assim sucessivamente) recuperando o seu Controller. Relógios não-raiz não podem ser controlados diretamente.

Uma vez criado, um relógio não pode ser modificado (mas pode ser manipulado).

Usar uma linha temporal como temporizador

O relógio de uma linha temporal só progride quando houver um gestor de eventos associado a ela ou (no caso de um AnimationClock objeto) estiver associado a uma propriedade. Por esta razão (e outras), não é recomendado usar a Timeline como temporizador.

Notas para Herdeiros

As classes derivadas devem ser implementadas GetCurrentTimeCore() se quiserem modificar a forma como o tempo flui para este relógio. As classes derivadas podem ser feitas para fazer trabalho adicional quando o relógio repete, salta, procura, começa, pausa, retoma ou para, sobrepondo os DiscontinuousTimeMovement()métodos , SpeedChanged(), e Stopped() .

Construtores

Name Description
Clock(Timeline)

Inicializa uma nova instância da Clock classe, usando a especificada Timeline como modelo. O novo Clock objeto não tem filhos.

Propriedades

Name Description
Controller

Obtém um ClockController que pode ser usado para iniciar, pausar, retomar, procurar, saltar, parar ou remover isto Clock.

CurrentGlobalSpeed

Obtém a velocidade a que o tempo do relógio está a progredir atualmente, comparado com o tempo real.

CurrentGlobalTime

Obtém a hora global atual, conforme estabelecido pelo sistema de temporização WPF.

CurrentIteration

Arranja a versão atual deste relógio.

CurrentProgress

Obtém o progresso atual desta Clock versão na sua iteração atual.

CurrentState

Obtém um valor que indica se o relógio é atualmente Active, Filling, ou Stopped.

CurrentTime

Recebe o tempo atual deste relógio dentro da sua iteração atual.

Dispatcher

Percebe o Dispatcher que isto DispatcherObject está associado.

(Herdado de DispatcherObject)
HasControllableRoot

Obtém um valor que indica se isto Clock faz parte de uma árvore de relógio controlável.

IsPaused

Obtém um valor que indica se este Clock, ou algum dos seus pais, está pausado.

NaturalDuration

Obtém a duração natural deste relógio Timeline.

Parent

Recebe o relógio que é o pai deste relógio.

Timeline

Obtém a Timeline origem de onde isto Clock foi criado.

Métodos

Name Description
CheckAccess()

Determina se o thread que chama tem acesso a este DispatcherObject.

(Herdado de DispatcherObject)
DiscontinuousTimeMovement()

Quando implementado numa classe derivada, será invocado sempre que um relógio se repete, salta ou procura.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetCanSlip()

Devolve se tem Clock a sua própria fonte de tempo externa, o que pode exigir sincronização com o sistema de temporização.

GetCurrentTimeCore()

Recebe o tempo atual deste relógio dentro da sua iteração atual.

GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
SpeedChanged()

Quando implementado numa classe derivada, será invocado sempre que um relógio começa, salta, pausa, retoma ou quando o relógio SpeedRatio é modificado.

Stopped()

Quando implementado numa classe derivada, será invocado sempre que um relógio for parado usando o Stop() método.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)
VerifyAccess()

Faz cumprir que o thread que chama tem acesso a este DispatcherObject.

(Herdado de DispatcherObject)

evento

Name Description
Completed

Ocorre quando este relógio termina completamente de tocar.

CurrentGlobalSpeedInvalidated

Ocorre quando a velocidade do relógio é atualizada.

CurrentStateInvalidated

Ocorre quando a propriedade do CurrentState relógio é atualizada.

CurrentTimeInvalidated

Ocorre quando o relógio CurrentTime deste relógio se torna inválido.

RemoveRequested

Ocorre quando o Remove() método é chamado neste Clock ou num dos seus relógios pais.

Aplica-se a