Clock Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mempertahankan status waktu proses untuk 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
- Warisan
- Turunan
Keterangan
A Timeline, dengan sendirinya, tidak benar-benar melakukan apa pun selain menggambarkan segmen waktu. Ini adalah objek garis Clock waktu yang melakukan pekerjaan nyata: ini mempertahankan status run-time terkait waktu untuk garis waktu.
Dalam kebanyakan kasus, jam dibuat secara otomatis untuk garis waktu Anda. Saat Anda menganimasikan dengan menggunakan Storyboard metode atau BeginAnimation , jam secara otomatis dibuat untuk garis waktu dan animasi Anda dan diterapkan ke properti yang ditargetkan. Misalnya, lihat Cara: Menganimasikan Properti dengan Menggunakan Papan Cerita dan Cara: Menganimasikan Properti Tanpa Menggunakan Papan Cerita.
Anda juga dapat membuat Clock secara eksplisit dengan menggunakan metode .CreateClock Dalam skenario intensif performa, seperti menganimasikan sejumlah besar objek serupa, mengelola penggunaan Anda sendiri Clock dapat memberikan manfaat performa.
Jam disusun di pohon yang cocok dengan struktur Timeline pohon objek tempat mereka dibuat. Jam akar pohon waktu tersebut dapat dimanipulasi secara interaktif (dijeda, dilanjutkan, dihentikan, dan sebagainya) dengan mengambilnya Controller. Jam non-akar tidak dapat dikontrol secara langsung.
Setelah dibuat, jam tidak dapat dimodifikasi (tetapi dapat dimanipulasi).
Menggunakan Garis Waktu sebagai Timer
Jam garis waktu hanya akan berlangsung ketika ada penanganan aktivitas yang terkait dengannya atau (dalam kasus AnimationClock objek) yang terkait dengan properti. Untuk alasan ini (dan lainnya), tidak disarankan agar Anda menggunakan Timeline sebagai timer.
Catatan Bagi Inheritor
Kelas turunan harus diterapkan GetCurrentTimeCore() jika mereka ingin memodifikasi bagaimana waktu mengalir untuk jam ini. Kelas turunan dapat dibuat untuk melakukan pekerjaan tambahan ketika jam berulang, melompat, mencari, memulai, menjeda, melanjutkan, atau berhenti dengan mengambil alih DiscontinuousTimeMovement()metode , SpeedChanged(), dan Stopped() .
Konstruktor
| Nama | Deskripsi |
|---|---|
| Clock(Timeline) |
Menginisialisasi instans Clock baru kelas, menggunakan yang ditentukan Timeline sebagai templat. Objek baru Clock tidak memiliki anak. |
Properti
| Nama | Deskripsi |
|---|---|
| Controller |
ClockController Mendapatkan yang dapat digunakan untuk memulai, menjeda, melanjutkan, mencari, melewati, menghentikan, atau menghapus ini Clock. |
| CurrentGlobalSpeed |
Mendapatkan tingkat di mana waktu jam saat ini mengalami kemajuan, dibandingkan dengan waktu dunia nyata. |
| CurrentGlobalTime |
Mendapatkan waktu global saat ini, seperti yang ditetapkan oleh sistem waktu WPF. |
| CurrentIteration |
Dapatkan iterasi jam ini saat ini. |
| CurrentProgress |
Mendapatkan kemajuan saat ini Clock dalam iterasinya saat ini. |
| CurrentState |
Mendapatkan nilai yang menunjukkan apakah jam saat ini Activeadalah , , Fillingatau Stopped. |
| CurrentTime |
Mendapatkan waktu jam ini saat ini dalam iterasinya saat ini. |
| Dispatcher |
Dispatcher Mendapatkan ini DispatcherObject dikaitkan dengan. (Diperoleh dari DispatcherObject) |
| HasControllableRoot |
Mendapatkan nilai yang menunjukkan apakah ini Clock adalah bagian dari pohon jam yang dapat dikontrol. |
| IsPaused |
Mendapatkan nilai yang menunjukkan apakah ini Clock, atau salah satu induknya, dijeda. |
| NaturalDuration |
Mendapatkan durasi alami jam Timelineini. |
| Parent |
Mendapatkan jam yang merupakan induk jam ini. |
| Timeline |
Metode
| Nama | Deskripsi |
|---|---|
| CheckAccess() |
Menentukan apakah utas panggilan memiliki akses ke ini DispatcherObject. (Diperoleh dari DispatcherObject) |
| DiscontinuousTimeMovement() |
Ketika diimplementasikan dalam kelas turunan, akan dipanggil setiap kali jam diulang, melompat, atau mencari. |
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetCanSlip() |
Mengembalikan apakah Clock memiliki sumber waktu eksternalnya sendiri, yang mungkin memerlukan sinkronisasi dengan sistem waktu. |
| GetCurrentTimeCore() |
Mendapatkan waktu jam ini saat ini dalam iterasinya saat ini. |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| SpeedChanged() |
Ketika diimplementasikan dalam kelas turunan, akan dipanggil setiap kali jam dimulai, melompati, menjeda, melanjutkan, atau ketika jam SpeedRatio dimodifikasi. |
| Stopped() |
Ketika diimplementasikan dalam kelas turunan, akan dipanggil setiap kali jam dihentikan menggunakan Stop() metode . |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
| VerifyAccess() |
Memberlakukan bahwa utas panggilan memiliki akses ke ini DispatcherObject. (Diperoleh dari DispatcherObject) |
Acara
| Nama | Deskripsi |
|---|---|
| Completed |
Terjadi ketika jam ini telah benar-benar selesai dimainkan. |
| CurrentGlobalSpeedInvalidated |
Terjadi ketika kecepatan jam diperbarui. |
| CurrentStateInvalidated |
Terjadi ketika properti jam CurrentState diperbarui. |
| CurrentTimeInvalidated |
Terjadi ketika jam ini menjadi tidak CurrentTime valid. |
| RemoveRequested |
Terjadi ketika metode dipanggil Remove() pada ini Clock atau salah satu jam induknya. |