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
상속
파생

설명

A Timeline, 그 자체로, 실제로 시간의 세그먼트를 설명 하는 것 이외의 아무것도 하지 않습니다. 실제 작업을 수행하는 타임라인의 Clock 개체입니다. 타임라인에 대한 타이밍 관련 런타임 상태를 유지 관리합니다.

대부분의 경우 타임라인에 대해 시계가 자동으로 만들어집니다. 또는 BeginAnimation 메서드를 Storyboard 사용하여 애니메이션 효과를 주면 타임라인 및 애니메이션에 대해 시계가 자동으로 만들어지고 대상 속성에 적용됩니다. 예를 들어 방법 : 스토리보드를 사용하여 속성에 애니메이션 효과 적용 및 방법: 스토리보드를 사용하지 않고 속성에 애니메이션 효과 적용을 참조하세요.

메서드를 Clock 사용하여 CreateClock 명시적으로 만들 수도 있습니다. 많은 수의 유사한 개체에 애니메이션 효과를 주는 등의 성능 집약적 시나리오에서 사용자 고유 Clock 의 사용을 관리하면 성능상의 이점을 제공할 수 있습니다.

시계는 만든 개체 트리의 Timeline 구조와 일치하는 트리에 정렬됩니다. 이러한 타이밍 트리의 루트 클록은 해당 타이밍 트리를 검색 Controller하여 대화형으로 조작(일시 중지, 다시 시작, 중지 등)할 수 있습니다. 루트가 아닌 클록은 직접 제어할 수 없습니다.

만든 시계는 수정할 수 없지만 조작할 수 있습니다.

타임라인을 타이머로 사용

타임라인의 시계는 연결된 이벤트 처리기가 있거나(개체의 AnimationClock 경우) 속성과 연결된 경우에만 진행됩니다. 이러한 이유(및 기타)를 위해 타이머로 Timeline 사용하는 것은 권장되지 않습니다.

상속자 참고

파생 클래스는 이 클록의 시간 흐름 방식을 수정하려는 경우 구현 GetCurrentTimeCore() 해야 합니다. 파생 클래스는 시계가 반복, 건너뛰기, 검색, 시작, 일시 중지, 다시 시작 또는 중지될 때 , SpeedChanged()Stopped() 메서드를 재정의DiscontinuousTimeMovement()하여 추가 작업을 수행할 수 있습니다.

생성자

Clock(Timeline)

지정한 Clock을 템플릿으로 사용하여 Timeline 클래스의 새 인스턴스를 초기화합니다. 새 Clock 개체에는 자식이 없습니다.

속성

Controller

Clock을 시작, 일시 중지, 다시 시작, 검색, 건너뛰기, 중지 또는 제거할 수 있는 ClockController를 가져옵니다.

CurrentGlobalSpeed

클록의 시간이 현재 진행되는 속도를 실제 시간과 비교하여 가져옵니다.

CurrentGlobalTime

WPF 타이밍 시스템에서 설정한 현재 전역 시간을 가져옵니다.

CurrentIteration

이 Clock의 현재 반복을 가져옵니다.

CurrentProgress

현재 반복 내에서 이 Clock의 현재 진행률을 가져옵니다.

CurrentState

클록이 현재 Active, Filling 또는 Stopped인지 여부를 나타내는 값을 가져옵니다.

CurrentTime

현재 반복 내에서 이 Clock의 현재 시간을 가져옵니다.

Dispatcher

Dispatcher와 연결된 DispatcherObject를 가져옵니다.

(다음에서 상속됨 DispatcherObject)
HasControllableRoot

Clock이 제어 가능한 Clock 트리의 일부인지 여부를 나타내는 값을 가져옵니다.

IsPaused

Clock 또는 부모 Clock이 일시 중지되어 있는지 여부를 나타내는 값을 가져옵니다.

NaturalDuration

이 Clock Timeline의 기본 재생 시간을 가져옵니다.

Parent

이 Clock의 부모 Clock을 가져옵니다.

Timeline

Timeline을 만든 Clock을 가져옵니다.

메서드

CheckAccess()

호출 스레드가 이 DispatcherObject에 액세스할 수 있는지 여부를 확인합니다.

(다음에서 상속됨 DispatcherObject)
DiscontinuousTimeMovement()

파생 클래스에서 구현된 경우 Clock이 반복, 건너뛰기 또는 검색할 때마다 호출됩니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetCanSlip()

Clock에 타이밍 시스템과 동기화해야 될 수도 있는 외부 시간 소스가 있는지 여부를 반환합니다.

GetCurrentTimeCore()

현재 반복 내에서 이 Clock의 현재 시간을 가져옵니다.

GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
SpeedChanged()

파생 클래스에서 구현된 경우 Clock이 시작, 건너뛰기, 일시 중지, 다시 시작할 때마다 또는 Clock의 SpeedRatio가 수정될 때 호출됩니다.

Stopped()

파생 클래스에서 구현된 경우 Stop() 메서드를 사용하여 Clock이 중지될 때마다 호출됩니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
VerifyAccess()

호출 스레드에서 이 DispatcherObject에 액세스할 수 있는지 확인합니다.

(다음에서 상속됨 DispatcherObject)

이벤트

Completed

이 Clock의 재생이 완전히 끝나면 발생합니다.

CurrentGlobalSpeedInvalidated

클록의 속도가 업데이트될 때 발생합니다.

CurrentStateInvalidated

클록의 CurrentState 속성이 업데이트될 때 발생합니다.

CurrentTimeInvalidated

이 Clock의 CurrentTime을 사용할 수 없게 되면 발생합니다.

RemoveRequested

Remove() 메서드가 이 Clock 또는 부모 Clock 중 하나에 대해 호출되면 발생합니다.

적용 대상