Clock Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Udržuje časování za běhu pro 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
- Dědičnost
- Odvozené
Poznámky
Sama Timelineo sobě nedělá nic jiného, než popisuje segment času. Jedná se o objekt časové osy Clock , který dělá skutečnou práci: udržuje stav běhu související s časováním časové osy.
Ve většině případů se pro časovou osu vytvoří automaticky hodiny. Když animujete pomocí metody nebo BeginAnimation pomocí Storyboard metody, hodiny se automaticky vytvoří pro časové osy a animace a použijí se na jejich cílové vlastnosti. Příklady najdete v tématu Postupy: Animace vlastnosti pomocí scénáře a postupy: Animace vlastnosti bez použití scénáře.
Pomocí této metody můžete také explicitně CreateClock vytvořitClock. Ve scénářích náročných na výkon, jako je animování velkého počtu podobných objektů, může správa vlastního Clock použití přinést výhody výkonu.
Hodiny jsou uspořádány do stromů, které odpovídají struktuře Timeline stromu objektů, ze kterého jsou vytvořeny. Kořenové hodiny takového časování stromu mohou být interaktivně manipulovány (pozastaveno, obnoveno, zastaveno atd.) načtením jeho Controller. Ne rootové hodiny nelze přímo ovládat.
Po vytvoření se hodiny nedají upravit (ale je možné s nimi manipulovat).
Použití časové osy jako časovače
Hodiny časové osy budou probíhat pouze v případě, že je k ní přidružená obslužná rutina události nebo (v případě objektu AnimationClock ) je přidružená k vlastnosti. Z tohoto důvodu (a další) se nedoporučuje používat Timeline jako časovač.
Poznámky pro dědice
Odvozené třídy by měly implementovat GetCurrentTimeCore() , pokud chtějí upravit způsob toků času pro tento hodin. Odvozené třídy lze provést další práci, když se hodiny opakují, přeskočí, hledání, začíná, pozastaví, obnoví nebo zastaví přepsáním DiscontinuousTimeMovement(), SpeedChanged()a Stopped() metod.
Konstruktory
| Name | Description |
|---|---|
| Clock(Timeline) |
Inicializuje novou instanci Clock třídy pomocí zadané Timeline jako šablony. Nový Clock objekt nemá žádné podřízené položky. |
Vlastnosti
| Name | Description |
|---|---|
| Controller |
ClockController Získá, který lze použít ke spuštění, pozastavení, obnovení, hledání, přeskočení, zastavení nebo odebrání této Clock. |
| CurrentGlobalSpeed |
Získá rychlost, s jakou čas hodin právě probíhá, v porovnání s reálným časem. |
| CurrentGlobalTime |
Získá aktuální globální čas vytvořený systémem časování WPF. |
| CurrentIteration |
Získejte aktuální iteraci těchto hodin. |
| CurrentProgress |
Získá aktuální průběh tohoto Clock v rámci jeho aktuální iterace. |
| CurrentState |
Získá hodnotu určující, zda jsou hodiny aktuálně Active, Fillingnebo Stopped. |
| CurrentTime |
Získá aktuální čas tohoto času v rámci aktuální iterace. |
| Dispatcher |
Dispatcher Získá toto DispatcherObject je přidružené. (Zděděno od DispatcherObject) |
| HasControllableRoot |
Získá hodnotu, která označuje, zda je to Clock součást řídicího hodinového stromu. |
| IsPaused |
Získá hodnotu, která označuje, zda je tato Clocknebo některá z jejích nadřazených prvků pozastavena. |
| NaturalDuration |
Získá přirozenou dobu trvání tohoto hodin Timeline. |
| Parent |
Získá hodiny, které jsou nadřazené této hodiny. |
| Timeline |
Metody
| Name | Description |
|---|---|
| CheckAccess() |
Určuje, zda volající vlákno má přístup k tomuto DispatcherObject. (Zděděno od DispatcherObject) |
| DiscontinuousTimeMovement() |
Při implementaci v odvozené třídě se vyvolá vždy, když se hodiny opakují, přeskočí nebo vyhledá. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetCanSlip() |
Vrátí, zda Clock má vlastní externí zdroj času, který může vyžadovat synchronizaci se systémem časování. |
| GetCurrentTimeCore() |
Získá aktuální čas tohoto času v rámci aktuální iterace. |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| SpeedChanged() |
Při implementaci v odvozené třídě se vyvolá vždy, když hodiny začínají, přeskočí, pozastaví, obnoví nebo když se hodiny SpeedRatio upraví. |
| Stopped() |
Při implementaci v odvozené třídě bude vyvolána při každém zastavení hodin pomocí Stop() metody. |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
| VerifyAccess() |
Vynucuje, že volající vlákno má přístup k tomuto DispatcherObject. (Zděděno od DispatcherObject) |
Událost
| Name | Description |
|---|---|
| Completed |
Nastane, když se tyto hodiny úplně dokončí přehrávání. |
| CurrentGlobalSpeedInvalidated |
Nastane, když se aktualizuje rychlost hodin. |
| CurrentStateInvalidated |
Nastane při aktualizaci vlastnosti hodin CurrentState . |
| CurrentTimeInvalidated |
Nastane, když se tyto hodiny CurrentTime stanou neplatnými. |
| RemoveRequested |
Nastane, Remove() když metoda je volána na tomto Clock nebo jeden z jeho nadřazených hodin. |