Paket | flash.utils |
Sınıf | public class Timer |
Miras Alma | Timer EventDispatcher Object |
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
start()
yöntemini kullanın. Zamanlayıcı aralığında çalıştırılacak kodu ayarlamak üzere timer
olayı için bir olay dinleyici ekleyin.
Bir çizelge üzerinde kod çalıştırmak için, bir kez çalıştırılmak veya belirtilen aralıklarda tekrar edilmek üzere Timer nesneleri oluşturabilirsiniz. SWF dosyasının kare hızına veya çalışma zamanı ortamına bağlı olarak (kullanılabilir bellek ve diğer faktörler) çalışma zamanı, olayları biraz uzak aralıklarda gönderebilir. Örneğin, SWF dosyası saniyede 10 kare (fps) oynatmak üzere ayarlanırsa (100 milisaniyelik aralıklar) ve zamanlayıcınız bir olayı 80 milisaniyede tetiklemek üzere ayarlandıysa, olay 100 milisaniyelik aralığa yakın olarak gönderilecektir.Bellek ağırlıklı komut dosyaları da olayları kaydırabilir.
Özellik | Tanımlayan: | ||
---|---|---|---|
constructor : Object
Belirli bir nesne örneği için sınıf nesnesine veya yapıcı işlevine bir başvuru. | Object | ||
currentCount : int [salt okunur]
Zamanlayıcının sıfırdan başladıktan sonra gerçekleştirdiği toplam tetikleme sayısı. | Timer | ||
delay : Number
Zamanlayıcı olayları arasındaki milisaniye olarak gecikme süresi. | Timer | ||
repeatCount : int
Zamanlayıcının ayarlandığı toplam çalışma sayısı. | Timer | ||
running : Boolean [salt okunur]
Zamanlayıcının geçerli durumu; zamanlayıcı çalışıyorsa true, aksi takdirde false olur. | Timer |
Yöntem | Tanımlayan: | ||
---|---|---|---|
Belirtilen delay ve repeatCount durumları ile yeni bir Timer nesnesi oluşturur. | Timer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
EventDispatcher nesnesi olan bir olay dinleyici nesnesini, dinleyicinin bir olayın bildirimini alması için kaydeder. | EventDispatcher | ||
Olay akışına bir olay gönderir. | EventDispatcher | ||
EventDispatcher nesnesinin belirli bir olay türü için kayıtlı dinleyicisi olup olmadığını kontrol eder. | EventDispatcher | ||
Bir nesnenin belirli bir özelliğinin tanımlı olup olmadığını gösterir. | Object | ||
Object sınıfının bir örneğinin parametre olarak belirtilen nesnenin prototip zincirinde olup olmadığını gösterir. | Object | ||
Belirtilen özelliğin bulunup bulunmadığını ve numaralandırılabilir olup olmadığını gösterir. | Object | ||
EventDispatcher nesnesinden bir dinleyiciyi kaldırır. | EventDispatcher | ||
Çalışıyorsa, zamanlayıcıyı durdurur ve currentCount özelliğini, bir kronometrenin sıfırlama düğmesi gibi 0'a geri ayarlar. | Timer | ||
Dinamik bir özelliğin döngü işlemlerinde kullanılabilirliğini ayarlar. | Object | ||
Zaten çalışmıyorsa, zamanlayıcıyı başlatır. | Timer | ||
Zamanlayıcıyı durdurur. | Timer | ||
Bu nesnenin, yerel ayara özel kurallara göre biçimlendirilmiş dize temsilini döndürür. | Object | ||
Belirtilen nesnenin dize olarak temsil edilen halini döndürür. | Object | ||
Belirtilen nesnenin temel değerini döndürür. | Object | ||
Bir olay dinleyicisinin bu EventDispatcher nesnesiyle mi, yoksa onun belirtilen olay türüne yönelik üst öğelerinden biriyle mi kayıtlı olduğunu kontrol eder. | EventDispatcher |
Olay | Özet | Tanımlayan: | ||
---|---|---|---|---|
[broadcast olayı] Flash Player veya AIR uygulaması işletim sistemi odağına gelip etkin olduğunda gönderilir. | EventDispatcher | |||
[broadcast olayı] Çalışan Flash Player veya AIR uygulaması sistem odağını kaybettiğinde ve etkin olmayan duruma geldiğinde gönderilir. | EventDispatcher | |||
Bir Timer nesnesi Timer.delay özelliğine göre belirlenen bir aralığa eriştiğinde gönderilir. | Timer | |||
Timer.repeatCount tarafından ayarlanan istek sayısı tamamlandığında gönderilir. | Timer |
currentCount | özellik |
currentCount:int
[salt okunur] Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Zamanlayıcının sıfırdan başladıktan sonra gerçekleştirdiği toplam tetikleme sayısı. Zamanlayıcı sıfırlanırsa, yalnızca sıfırlamadan sonraki tetiklemeler sayılır.
Uygulama
public function get currentCount():int
delay | özellik |
delay:Number
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Zamanlayıcı olayları arasındaki milisaniye olarak gecikme süresi. Zamanlayıcı çalışırken gecikme aralığını ayarlarsanız, zamanlayıcı repeatCount
yinelemesiyle aynı anda yeniden başlar.
Not: 20 milisaniyeden düşük bir gecikme
tavsiye edilmez. Zamanlayıcı sıklığı saniyede 60 kare ile sınırlıdır, bu da 16.6 milisaniyeden düşük bir gecikmenin çalışma zamanı sorunlarına yol açacağı anlamına gelir.
Uygulama
public function get delay():Number
public function set delay(value:Number):void
Atar
Error — Belirtilen gecikme negatif bir sayıysa veya sonlu bir sayı değilse bir istisna atar.
|
repeatCount | özellik |
repeatCount:int
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Zamanlayıcının ayarlandığı toplam çalışma sayısı. Tekrarlama sayısı 0 olarak ayarlanırsa, zamanlayıcı süresiz olarak, maksimum 24,86 güne kadar veya stop()
yöntemi çağrılana ya da program durana kadar devam eder. Tekrarlama sayısı sıfır değilse zamanlayıcı belirtilen sayı kadar çalışır. repeatCount
öğesi currentCount
öğesiyle aynı veya ondan düşük bir toplama ayarlanırsa, zamanlayıcı durur ve bir daha tetiklenmez.
Uygulama
public function get repeatCount():int
public function set repeatCount(value:int):void
running | özellik |
Timer | () | Yapıcı |
public function Timer(delay:Number, repeatCount:int = 0)
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Belirtilen delay
ve repeatCount
durumları ile yeni bir Timer nesnesi oluşturur.
Zamanlayıcı otomatik olarak başlamaz, başlatmak için start()
yöntemini çağırmanız gerekir.
delay:Number — Zamanlayıcı olayları arasında milisaniye cinsinden gecikme. 20 milisaniyeden düşük bir gecikme tavsiye edilmez. Zamanlayıcı sıklığı saniyede 60 kare ile sınırlıdır, bu da 16.6 milisaniyeden düşük bir gecikmenin çalışma zamanı sorunlarına yol açacağı anlamına gelir.
| |
repeatCount:int (default = 0 ) — Tekrarların sayısını belirtir. Sıfır ise, zamanlayıcı süresiz olarak, maksimum 24,86 güne (int.MAX_VALUE + 1) kadar tekrarlanır. Sıfır değilse, zamanlayıcı belirtilen sayı kadar tekrarlar ve ardından durur.
|
Atar
Error — belirtilen gecikme negatif bir sayıysa veya sonlu bir sayı değilse
|
Örnek ( Bu örnek nasıl kullanılır? )
30 saniyede başlayan (gecikme 300 milisaniyeye ayarlanır) ve toplamda 90 saniye olmak üzere üç kez tekrarlanan bir Timer nesnesi oluşturulur. (Üçüncü seferden sonra zamanlayıcı durur.)
myTimer
zamanlayıcısı için iki olay dinleyicisi eklenir. Bunlardan ilki, zamanlayıcının başlatıldığı her seferde meydana gelen TimerEvent.TIMER
olayı tarafından tetiklenir. timerHandler()
yöntemi, kalan saniyeleri göstermek için statusTextField
metin alanına yönelik metni değiştirir.
Not: Timer sınıfı, currentCount
özelliğindeki sayıyı artırarak başlamak zorunda olduğu sayıyı (tekrarlar
) takip eder.
Zamanlayıcı son kez çağrıldığında, TimerEvent.TIMER_COMPLETE
olayı gönderilir ve completeHandler()
yöntemi çağrılır. completeHandler()
yöntemi, inputTextField
metin alanının türünüINPUT
yerine DYNAMIC
olarak değiştirir, bu kullanıcının artık metin giremeyeceği veya metni değiştiremeyeceği anlamına gelir.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; import flash.text.TextFieldAutoSize; import flash.utils.Timer; import flash.events.TimerEvent; import flash.events.Event; public class Timer_constructorExample extends Sprite { private var statusTextField:TextField = new TextField(); private var inputTextField:TextField = new TextField(); private var delay:uint = 30000; private var repeat:uint = 3; private var myTimer:Timer = new Timer(delay, repeat); public function Timer_constructorExample() { inputTextField.x = 10; inputTextField.y = 10; inputTextField.border = true; inputTextField.background = true; inputTextField.height = 200; inputTextField.width = 200; inputTextField.multiline = true; inputTextField.wordWrap = true; inputTextField.type = TextFieldType.INPUT; statusTextField.x = 10; statusTextField.y = 220; statusTextField.background = true; statusTextField.autoSize = TextFieldAutoSize.LEFT; myTimer.start(); statusTextField.text = "You have " + ((delay * repeat) / 1000) + " seconds to enter your response."; myTimer.addEventListener(TimerEvent.TIMER, timerHandler); myTimer.addEventListener(TimerEvent.TIMER_COMPLETE, completeHandler); addChild(inputTextField); addChild(statusTextField); } private function timerHandler(e:TimerEvent):void{ repeat--; statusTextField.text = ((delay * repeat) / 1000) + " seconds left."; } private function completeHandler(e:TimerEvent):void { statusTextField.text = "Times Up."; inputTextField.type = TextFieldType.DYNAMIC; } } }
reset | () | yöntem |
public function reset():void
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Çalışıyorsa, zamanlayıcıyı durdurur ve currentCount
özelliğini, bir kronometrenin sıfırlama düğmesi gibi 0'a geri ayarlar. Ardından, start()
çağrıldığında, zamanlayıcı örneği repeatCount
değeri tarafından ayarlanan belirtilmiş tekrar sayısı kadar çalışır.
İlgili API Öğeleri
start | () | yöntem |
public function start():void
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Zaten çalışmıyorsa, zamanlayıcıyı başlatır.
stop | () | yöntem |
public function stop():void
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Zamanlayıcıyı durdurur. stop()
öğesinden sonra start()
çağrıldığında, zamanlayıcı örneği repeatCount
özelliği tarafından ayarlanan kalan tekrar sayısı kadar çalışır.
İlgili API Öğeleri
timer | Olay |
flash.events.TimerEvent
özellik TimerEvent.type =
flash.events.TimerEvent.TIMER
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Bir Timer nesnesi Timer.delay
özelliğine göre belirlenen bir aralığa eriştiğinde gönderilir.
timer
olay nesnesinin type
özelliği değerini tanımlar.
Bu olay şu özelliklere sahiptir:
Özellik | Değer |
---|---|
bubbles | false |
cancelable | false ; iptal edilecek varsayılan davranış yoktur. |
currentTarget | Bu Event nesnesini olay dinleyicisiyle etkin olarak işleyen nesne. |
target | Aralığına ulaşan Timer nesnesi. |
timerComplete | Olay |
flash.events.TimerEvent
özellik TimerEvent.type =
flash.events.TimerEvent.TIMER_COMPLETE
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Timer.repeatCount
tarafından ayarlanan istek sayısı tamamlandığında gönderilir.
timerComplete
olay nesnesinin type
özelliğinin değerini tanımlar.
Bu olay şu özelliklere sahiptir:
Özellik | Değer |
---|---|
bubbles | false |
cancelable | false ; iptal edilecek varsayılan davranış yoktur. |
currentTarget | Bu Event nesnesini olay dinleyicisiyle etkin olarak işleyen nesne. |
target | İsteklerini tamamlayan Timer nesnesi. |
timerHandler()
dinleyici yönteminin gönderilecek yeni TimerEvent öğesini dinlemek için nasıl ayarlanacağını göstermek için TimerExample
sınıfını kullanır. Zamanlayıcı, start()
çağrıldığında başlatılır ve bu noktadan sonra zamanlayıcı olayları gönderilir.
package { import flash.utils.Timer; import flash.events.TimerEvent; import flash.display.Sprite; public class TimerExample extends Sprite { public function TimerExample() { var myTimer:Timer = new Timer(1000, 2); myTimer.addEventListener("timer", timerHandler); myTimer.start(); } public function timerHandler(event:TimerEvent):void { trace("timerHandler: " + event); } } }
Tue Jun 12 2018, 01:09 PM Z