Clock Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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 |
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. |