Clock クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
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
- 継承
- 派生
注釈
A Timelineは、それ自体では、実際には時間のセグメントを記述する以外の何も行いません。 実際の処理を行うのは、タイムラインの Clock オブジェクトです。このオブジェクトは、タイムラインのタイミングに関連する実行時状態を維持します。
ほとんどの場合、タイムラインの時計が自動的に作成されます。 Storyboard または BeginAnimation メソッドを使用してアニメーションを作成すると、タイムラインとアニメーションに対してクロックが自動的に作成されて、対象のプロパティに適用されます。 例については、「 方法: ストーリーボードを使用してプロパティをアニメーション化 する」と「 方法: ストーリーボードを使用せずにプロパティをアニメーション化する」を参照してください。
また、CreateClock メソッドを使用して Clock を明示的に作成することもできます。 多数の似たオブジェクトのアニメーション化など、負荷の高いシナリオでは、独自の Clock の使用を管理するとパフォーマンスの利点があります。
クロックは、作成元のオブジェクト ツリーの構造に Timeline 一致するツリーに配置されます。 このようなタイミング ツリーのルート クロックは、その Controllerタイミング ツリーを取得することによって対話形式で操作 (一時停止、再開、停止など) できます。 非ルート クロックを直接制御することはできません。
一度作成すると、クロックを変更することはできません (ただし、操作することはできます)。
タイムラインをタイマーとして使用する
タイムラインの時計は、イベント ハンドラーが関連付けられている場合、または (オブジェクトの AnimationClock 場合は) プロパティに関連付けられている場合にのみ進行します。 この理由 (およびその他) では、タイマーとして使用 Timeline することはお勧めしません。
注意 (継承者)
派生クラスは、このクロックの時間フローを変更する場合に実装 GetCurrentTimeCore() する必要があります。 派生クラスは、クロックの繰り返し、スキップ、シーク、開始、一時停止、再開、またはメソッドのオーバーライドによって停止したときに追加の作業をDiscontinuousTimeMovement()SpeedChanged()Stopped()行うことができます。
コンストラクター
Clock(Timeline) |
指定した Clock をテンプレートとして使用して、Timeline クラスの新しいインスタンスを初期化します。 新しい Clock オブジェクトには、子がありません。 |
プロパティ
Controller |
この Clock を開始、一時停止、再開、シーク、スキップ、停止、削除するために使用できる ClockController を取得します。 |
CurrentGlobalSpeed |
現実世界の時間と比較したときの、クロックの時間が現在進行しているレートを取得します。 |
CurrentGlobalTime |
WPF タイミング システムによって確立された現在のグローバル時刻を取得します。 |
CurrentIteration |
このクロックの現在の反復を取得します。 |
CurrentProgress |
現在の反復におけるこの Clock の進行状況を取得します。 |
CurrentState | |
CurrentTime |
このクロックの現在の反復における現在の時刻を取得します。 |
Dispatcher |
この Dispatcher が関連付けられている DispatcherObject を取得します。 (継承元 DispatcherObject) |
HasControllableRoot |
この Clock が制御可能なクロック ツリーの一部かどうかを示す値を取得します。 |
IsPaused |
この Clock または親が一時停止しているかどうかを示す値を取得します。 |
NaturalDuration |
このクロックの Timeline の自然な継続時間を取得します。 |
Parent |
このクロックの親であるクロックを取得します。 |
Timeline |
メソッド
CheckAccess() |
呼び出し元のスレッドがこの DispatcherObject にアクセスできるかどうかを確認します。 (継承元 DispatcherObject) |
DiscontinuousTimeMovement() |
派生クラスで実装された場合、クロックを反復、スキップ、シークするたびに呼び出されます。 |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetCanSlip() |
Clock に、タイミング システムとの同期を必要とする可能性がある専用の外部タイム ソースがあるかどうかを示す値を返します。 |
GetCurrentTimeCore() |
このクロックの現在の反復における現在の時刻を取得します。 |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
SpeedChanged() |
派生クラスで実装された場合、クロックを開始、スキップ、一時停止、再開するか、クロックの SpeedRatio を変更するたびに呼び出されます。 |
Stopped() |
派生クラスで実装された場合、Stop() メソッドを使用してクロックを停止するたびに呼び出されます。 |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
VerifyAccess() |
呼び出し元のスレッドがこの DispatcherObject にアクセスできるように強制します。 (継承元 DispatcherObject) |
events
Completed |
クロックの再生が完全に終了すると発生します。 |
CurrentGlobalSpeedInvalidated |
クロックの速度が更新されると発生します。 |
CurrentStateInvalidated |
クロックの CurrentState プロパティが更新されると発生します。 |
CurrentTimeInvalidated |
このクロックの CurrentTime が無効になると発生します。 |
RemoveRequested |