Clock Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Mantiene lo stato di temporizzazione runtime per un 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
- Ereditarietà
- Derivato
Commenti
Un Timelineoggetto , da solo, non esegue effettivamente alcuna operazione diversa da descrivere un segmento di tempo. Si tratta dell'oggetto Clock della sequenza temporale che esegue il lavoro reale: mantiene lo stato di runtime correlato alla tempistica per la sequenza temporale.
Nella maggior parte dei casi, viene creato automaticamente un orologio per la sequenza temporale. Quando si anima usando o Storyboard il BeginAnimation metodo , gli orologi vengono creati automaticamente per le sequenze temporali e le animazioni e applicate alle relative proprietà di destinazione. Per esempi, vedere Procedura: Animare una proprietà usando uno storyboard e Procedura: Animare una proprietà senza usare uno storyboard.
È anche possibile creare un Clock oggetto in modo esplicito usando il CreateClock metodo . Negli scenari a elevato utilizzo di prestazioni, ad esempio l'animazione di un numero elevato di oggetti simili, la gestione Clock dell'uso personalizzato può offrire vantaggi in termini di prestazioni.
Gli orologi sono disposti in alberi che corrispondono alla struttura dell'albero Timeline degli oggetti da cui vengono creati. L'orologio radice di un albero di temporizzazione di questo tipo può essere manipolato in modo interattivo (sospeso, ripreso, arrestato e così via) recuperandone Controller. Gli orologi non radice non possono essere controllati direttamente.
Una volta creato, non è possibile modificare un orologio , ma può essere modificato.
Uso di una sequenza temporale come timer
L'orologio di una sequenza temporale procederà solo quando è associato un gestore eventi o , nel caso di un AnimationClock oggetto, associato a una proprietà. Per questo motivo (e altri), non è consigliabile usare come Timeline timer.
Note per gli eredi
Le classi derivate devono implementare GetCurrentTimeCore() se vogliono modificare il modo in cui il tempo scorre per questo orologio. Le classi derivate possono essere eseguite per eseguire operazioni aggiuntive quando l'orologio si ripete, ignora, cerca, inizia, sospende, riprende o arresta eseguendo l'override dei DiscontinuousTimeMovement()metodi , SpeedChanged()e Stopped() .
Costruttori
Clock(Timeline) |
Inizializza una nuova istanza della classe Clock utilizzando l'oggetto Timeline specificato come modello. Il nuovo oggetto Clock non ha elementi figli. |
Proprietà
Controller |
Ottiene un ClockController che può essere usato per avviare, sospendere, ripristinare, cercare, ignorare, arrestare o rimuovere questo Clock. |
CurrentGlobalSpeed |
Ottiene la velocità di avanzamento del tempo del clock corrente, rispetto al tempo del mondo reale. |
CurrentGlobalTime |
Ottiene l'ora globale corrente, come stabilito dal sistema di temporizzazione WPF. |
CurrentIteration |
Ottenere l'iterazione corrente di questo clock. |
CurrentProgress |
Ottiene lo stato di avanzamento corrente di questo Clock all'interno dell'iterazione corrente. |
CurrentState |
Ottiene un valore che indica se l'orologio attualmente è Active, Filling o Stopped. |
CurrentTime |
Ottiene l'ora corrente di questo clock all'interno dell'iterazione corrente. |
Dispatcher |
Ottiene l'oggetto Dispatcher associato a DispatcherObject. (Ereditato da DispatcherObject) |
HasControllableRoot |
Ottiene un valore che indica se il controllo Clock fa parte di una struttura ad albero del clock controllabile. |
IsPaused |
Ottiene un valore che indica se questo Clock o alcuni elementi padri, è messo in pausa. |
NaturalDuration |
Ottiene la durata standard della Timeline di questo clock. |
Parent |
Ottiene il clock che è l’elemento padre di questo clock. |
Timeline |
Ottiene la Timeline con la quale è stato creato questo Clock. |
Metodi
CheckAccess() |
Determina se il thread chiamante ha accesso a DispatcherObject. (Ereditato da DispatcherObject) |
DiscontinuousTimeMovement() |
In caso di implementazione in una classe derivata, verrà richiamato ogni qualvolta un clock ripete, salta o cerca. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetCanSlip() |
Indica se Clock ha la propria origine dell'ora esterna che può richiedere una sincronizzazione con il sistema di temporizzazione. |
GetCurrentTimeCore() |
Ottiene l'ora corrente di questo clock all'interno dell'iterazione corrente. |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
SpeedChanged() |
In caso di implementazione in una classe derivata, verrà richiamato ogni qualvolta un clock inizia, salti, pause, riprende o quando il SpeedRatio del clock viene modificato. |
Stopped() |
In caso di implementazione in una classe derivata, verrà richiamato ogni qualvolta un clock viene interrotto utilizzando il metodo Stop(). |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
VerifyAccess() |
Impone che il thread chiamante abbia accesso a DispatcherObject. (Ereditato da DispatcherObject) |
Eventi
Completed |
Si verifica quando questo clock ha completamente terminato l’esecuzione. |
CurrentGlobalSpeedInvalidated |
Si verifica quando la velocità del clock viene aggiornata. |
CurrentStateInvalidated |
Si verifica quando la proprietà CurrentState del clock viene aggiornata. |
CurrentTimeInvalidated |
Si verifica quando il CurrentTime di questo clock diventa non valido. |
RemoveRequested |
Si verifica quando viene chiamata l’evento Remove() su questo Clock o uno dei suoi clock genitori. |