Clock Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
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 |
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. |