Clock Klass

Definition

Underhåller körningstidstillstånd för en 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
Arv
Härledda

Kommentarer

En Timeline, i sig själv, gör egentligen inget annat än att beskriva ett tidssegment. Det är tidslinjens Clock objekt som utför det verkliga arbetet: det upprätthåller tidsrelaterat körningstillstånd för tidslinjen.

I de flesta fall skapas en klocka automatiskt för din tidslinje. När du animerar med hjälp av en Storyboard eller BeginAnimation -metoden skapas klockor automatiskt för dina tidslinjer och animeringar och tillämpas på deras målegenskaper. Exempel finns i How to: Animate a Property by Using a Storyboard and How to: Animate a Property Without Using a Storyboard (Animera en egenskap utan att använda en storyboard).

Du kan också skapa en Clock explicit med hjälp CreateClock av metoden. I prestandaintensiva scenarier, till exempel att animera ett stort antal liknande objekt, kan hantering av din egen Clock användning ge prestandafördelar.

Klockor ordnas i träd som matchar strukturen för objektträdet Timeline som de skapas från. Rotklockan för ett sådant tidsträd kan manipuleras interaktivt (pausas, återupptas, stoppas och så vidare) genom att hämta dess Controller. Icke-rotklockor kan inte styras direkt.

När en klocka har skapats kan den inte ändras (men den kan manipuleras).

Använda en tidslinje som timer

En tidslinjes klocka fortsätter bara när det finns en händelsehanterare som är associerad med den eller (om det gäller ett AnimationClock objekt) som den är associerad med en egenskap. Därför (och andra) rekommenderar vi inte att du använder en Timeline som timer.

Anteckningar till arvingar

Härledda klasser bör implementeras GetCurrentTimeCore() om de vill ändra hur tiden flödar för den här klockan. Härledda klasser kan göras för att utföra ytterligare arbete när klockan upprepas, hoppar över, söker efter, börjar, pausar, återupptar eller stoppar genom att DiscontinuousTimeMovement()åsidosätta metoderna , SpeedChanged()och Stopped() .

Konstruktorer

Name Description
Clock(Timeline)

Initierar en ny instans av klassen med hjälp av Clock den angivna Timeline som en mall. Det nya Clock objektet har inga underordnade objekt.

Egenskaper

Name Description
Controller

Hämtar en ClockController som kan användas för att starta, pausa, återuppta, söka, hoppa över, stoppa eller ta bort den här Clock.

CurrentGlobalSpeed

Hämtar den hastighet med vilken klockans tid för närvarande utvecklas, jämfört med realtidstid.

CurrentGlobalTime

Hämtar den aktuella globala tiden enligt det WPF tidsschemat.

CurrentIteration

Hämta den aktuella iterationen av den här klockan.

CurrentProgress

Hämtar den aktuella förloppet för detta Clock inom den aktuella iterationen.

CurrentState

Hämtar ett värde som anger om klockan för närvarande Activeär , Fillingeller Stopped.

CurrentTime

Hämtar den här klockans aktuella tid inom den aktuella iterationen.

Dispatcher

Hämtar det Dispatcher som DispatcherObject är associerat med.

(Ärvd från DispatcherObject)
HasControllableRoot

Hämtar ett värde som anger om detta Clock är en del av ett kontrollbart klockträd.

IsPaused

Hämtar ett värde som anger om detta Clock, eller någon av dess föräldrar, har pausats.

NaturalDuration

Hämtar den naturliga varaktigheten för klockans Timeline.

Parent

Hämtar klockan som är överordnad till den här klockan.

Timeline

Hämtar från Timeline vilken detta Clock skapades.

Metoder

Name Description
CheckAccess()

Avgör om den anropande tråden har åtkomst till den här DispatcherObject.

(Ärvd från DispatcherObject)
DiscontinuousTimeMovement()

När den implementeras i en härledd klass anropas när en klocka upprepas, hoppar över eller söker.

Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetCanSlip()

Returnerar om har Clock en egen extern tidskälla, vilket kan kräva synkronisering med tidssystemet.

GetCurrentTimeCore()

Hämtar den här klockans aktuella tid inom den aktuella iterationen.

GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
SpeedChanged()

När den implementeras i en härledd klass anropas när en klocka börjar, hoppar över, pausar, återupptar eller när klockans SpeedRatio ändras.

Stopped()

När den implementeras i en härledd klass anropas när en klocka stoppas med hjälp av Stop() metoden.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)
VerifyAccess()

Framtvingar att den anropande tråden har åtkomst till den här DispatcherObject.

(Ärvd från DispatcherObject)

Händelser

Name Description
Completed

Inträffar när den här klockan är helt klar.

CurrentGlobalSpeedInvalidated

Inträffar när klockans hastighet uppdateras.

CurrentStateInvalidated

Inträffar när klockans CurrentState egenskap uppdateras.

CurrentTimeInvalidated

Inträffar när den här klockans CurrentTime blir ogiltig.

RemoveRequested

Inträffar när Remove() metoden anropas på den här Clock eller någon av dess överordnade klockor.

Gäller för