Clock クラス

定義

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
継承
派生

注釈

自体では、 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

クロックが現在 ActiveFilling、または Stopped であるかどうかを示す値を取得します。

CurrentTime

このクロックの現在の反復における現在の時刻を取得します。

Dispatcher

この Dispatcher が関連付けられている DispatcherObject を取得します。

(継承元 DispatcherObject)
HasControllableRoot

この Clock が制御可能なクロック ツリーの一部かどうかを示す値を取得します。

IsPaused

この Clock または親が一時停止しているかどうかを示す値を取得します。

NaturalDuration

このクロックの Timeline の自然な継続時間を取得します。

Parent

このクロックの親であるクロックを取得します。

Timeline

この Timeline の作成元である Clock を取得します。

メソッド

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)

イベント

Completed

クロックの再生が完全に終了すると発生します。

CurrentGlobalSpeedInvalidated

クロックの速度が更新されると発生します。

CurrentStateInvalidated

クロックの CurrentState プロパティが更新されると発生します。

CurrentTimeInvalidated

このクロックの CurrentTime が無効になると発生します。

RemoveRequested

この Remove() または親クロックのいずれかで Clock メソッドが呼び出されると発生します。

適用対象