Paket | flash.events |
Sınıf | public class TextEvent |
Miras Alma | TextEvent Event Object |
Alt Sınıflar | DataEvent, ErrorEvent, IMEEvent |
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
TextEvent.LINK
ve TextEvent.TEXT_INPUT
.
İlgili API Öğeleri
Özellik | Tanımlayan: | ||
---|---|---|---|
bubbles : Boolean [salt okunur]
Bir olayın köpüren bir olay olup olmadığını belirtir. | Event | ||
cancelable : Boolean [salt okunur]
Olayla ilişkilendirilmiş davranışın önlenebilir olup olmadığını gösterir. | Event | ||
constructor : Object
Belirli bir nesne örneği için sınıf nesnesine veya yapıcı işlevine bir başvuru. | Object | ||
currentTarget : Object [salt okunur]
Bu Event nesnesini olay dinleyicisiyle etkin olarak işleyen nesne. | Event | ||
eventPhase : uint [salt okunur]
Olay akışındaki geçerli aşama. | Event | ||
target : Object [salt okunur]
Olay hedefi. | Event | ||
text : String
Bir textInput olayı için, kullanıcının girdiği karakter veya karakter dizisi. | TextEvent | ||
type : String [salt okunur]
Olay türü. | Event |
Yöntem | Tanımlayan: | ||
---|---|---|---|
text olayları hakkındaki bilgileri içeren bir Event nesnesi oluşturur. | TextEvent | ||
[geçersiz kıl]
TextEvent nesnesinin bir kopyasını oluşturur ve her özelliğin değerini, orijinal ile aynı olacak şekilde ayarlar. | TextEvent | ||
Özel ActionScript 3.0 Event sınıfınızdaki toString() yöntemini uygulamak için bir yardımcı işlev. | Event | ||
Bir nesnenin belirli bir özelliğinin tanımlı olup olmadığını gösterir. | Object | ||
Olayda preventDefault() öğesinin çağrılmış olup olmadığını kontrol eder. | Event | ||
Object sınıfının bir örneğinin parametre olarak belirtilen nesnenin prototip zincirinde olup olmadığını gösterir. | Object | ||
Bir olayın varsayılan davranışını, bu yapılabiliyorsa iptal eder. | Event | ||
Belirtilen özelliğin bulunup bulunmadığını ve numaralandırılabilir olup olmadığını gösterir. | Object | ||
Dinamik bir özelliğin döngü işlemlerinde kullanılabilirliğini ayarlar. | Object | ||
Olay akışında geçerli düğümdeki ve ondan sonra gelen düğümlerdeki olay dinleyicilerin işlenmesini engeller. | Event | ||
Olay akışında geçerli düğümden sonra gelen düğümlerdeki olay dinleyicilerin işlenmesini engeller. | Event | ||
Bu nesnenin, yerel ayara özel kurallara göre biçimlendirilmiş dize temsilini döndürür. | Object | ||
[geçersiz kıl]
TextEvent nesnesinin tüm özelliklerini içeren bir dize döndürür. | TextEvent | ||
Belirtilen nesnenin temel değerini döndürür. | Object |
Sabit | Tanımlayan: | ||
---|---|---|---|
LINK : String = "link" [statik]
Bir link event nesnesinin tür özelliğinin değerini tanımlar. | TextEvent | ||
TEXT_INPUT : String = "textInput" [statik]
Bir textInput olay nesnesinin type özelliğinin değerini tanımlar. | TextEvent |
text | özellik |
text:String
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
textInput
olayı için, kullanıcının girdiği karakter veya karakter dizisi. link
olayı için, <a>
etiketinin href
niteliğinin event
niteliğinin metni.
Uygulama
public function get text():String
public function set text(value:String):void
Örnek ( Bu örnek nasıl kullanılır? )
link
olayının gönderildiğini gösterir:
import flash.text.TextField; import flash.events.TextEvent; var tf:TextField = new TextField(); tf.htmlText = "<a href='event:myEvent'>Click Me.</a>"; tf.addEventListener("link", clickHandler); addChild(tf); function clickHandler(e:TextEvent):void { trace(e.type); // link trace(e.text); // myEvent }
TextEvent | () | Yapıcı |
public function TextEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, text:String = "")
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
text olayları hakkındaki bilgileri içeren bir Event nesnesi oluşturur. Event nesneleri, olay dinleyicilerine parametre olarak iletilir.
Parametrelertype:String — Olayın türü. Olay dinleyicileri bu bilgilere miras alınan type özelliği üzerinden erişebilir. Olası değerler şunlardır: TextEvent.LINK ve TextEvent.TEXT_INPUT .
| |
bubbles:Boolean (default = false ) — Event nesnesinin, olay akışının köpürme aşamasına katılıp katılmayacağını belirler. Olay dinleyicileri bu bilgilere miras alınan bubbles özelliği üzerinden erişebilir.
| |
cancelable:Boolean (default = false ) — Event nesnesinin iptal edilip edilemeyeceğini belirler. Olay dinleyicileri bu bilgilere miras alınan cancelable özelliği üzerinden erişebilir.
| |
text:String (default = " ") — Kullanıcı tarafından girilen bir veya daha fazla metin karakteri. Olay dinleyicileri, text özelliği üzerinden bu bilgilere erişebilir.
|
İlgili API Öğeleri
clone | () | yöntem |
override public function clone():Event
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
TextEvent nesnesinin bir kopyasını oluşturur ve her özelliğin değerini, orijinal ile aynı olacak şekilde ayarlar.
DöndürürEvent — Orijinaliyle eşlenen özellik değerlerine sahip yeni bir TextEvent nesnesi.
|
toString | () | yöntem |
override public function toString():String
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
TextEvent nesnesinin tüm özelliklerini içeren bir dize döndürür. Dize şu biçimdedir:
[TextEvent type=value bubbles=value cancelable=value text=value]
String — TextEvent nesnesinin tüm özelliklerini içeren bir dize.
|
LINK | Sabit |
public static const LINK:String = "link"
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Bir link
olay nesnesinin type
özelliği değerini tanımlar.
Bu olay şu özelliklere sahiptir:
Özellik | Değer |
---|---|
bubbles | true |
cancelable | false ; iptal edilecek varsayılan davranış yoktur. |
currentTarget | Bu Event nesnesini olay dinleyicisiyle etkin olarak işleyen nesne. |
target | Tıklatılan köprüyü içeren metin alanı. target her zaman olay dinleyicisini kaydeden görüntüleme listesindeki nesne değildir. Geçerli olarak olayı işleyen görüntüleme listesindeki nesneye erişmek için currentTarget özelliğini kullanın. |
text | URL'nin "event:" sonrasında kalan kısmı. |
İlgili API Öğeleri
Örnek ( Bu örnek nasıl kullanılır? )
Bir metin alanı oluşturulur ve htmlText
özelliği kullanılarak bunun içeriği HTML biçiminde bir dizeye ayarlanır. Kullanıcının daha kolay tanımlayabilmesi için bağların altı çizilidir. (Adobe Flash Player, yalnızca işaretçi bağın üzerine geldikten sonra fare işaretçisini değiştirir.) Kullanıcı tıklatmasının bir ActionScript yöntemini çağırdığından emin olmak için, bağın URL'si "event:"
dizesiyle başlar ve TextEvent.LINK
olayı için bir dinleyici eklenir.
Kullanıcı bir bağı tıklattıktan sonra tetiklenen linkHandler()
yöntemi, metin alanı için tüm bağ olaylarını yönetir. İlk if ifadesi, olayın "event:"
dizesinden sonra URL'nin geri kalanını tutan text
özelliğini kontrol eder. Kullanıcı işletim sisteminin bağını tıklatırsa, kullanıcıyı belirlenen web sitesine göndermek için, sistemin Capabilities.os
özelliğinden alınan kullanıcının geçerli işletim sisteminin adı kullanılır. Ya da olayın text
özelliği tarafından iletilen seçilmiş yarıçap boyutu, metin alanının altına bir daire çizmek için kullanılır. Kullanıcı yarıçap bağını her tıklattığında, önceden çizilen daire temizlenir ve seçilen yarıçap boyutunda yeni bir kırmızı daire çizilir.
package { import flash.display.Sprite; import flash.events.TextEvent; import flash.errors.IOError; import flash.events.IOErrorEvent; import flash.system.Capabilities; import flash.net.navigateToURL; import flash.net.URLRequest; import flash.text.TextField; import flash.text.TextFieldAutoSize; import flash.display.Shape; import flash.display.Graphics; public class TextEvent_LINKExample extends Sprite { private var myCircle:Shape = new Shape(); public function TextEvent_LINKExample() { var myTextField:TextField = new TextField(); myTextField.autoSize = TextFieldAutoSize.LEFT; myTextField.multiline = true; myTextField.background = true; myTextField.htmlText = "Draw a circle with the radius of <u><a href=\"event:20\">20 pixels</a></u>.<br>" + "Draw a circle with the radius of <u><a href=\"event:50\">50 pixels</a></u>.<br><br>" + "<u><a href=\"event:os\">Learn about your operating system.</a></u><br>"; myTextField.addEventListener(TextEvent.LINK, linkHandler); this.addChild(myTextField); this.addChild(myCircle); } private function linkHandler(e:TextEvent):void { var osString:String = Capabilities.os; if(e.text == "os") { if (osString.search(/Windows/) != -1 ){ navigateToURL(new URLRequest("http://www.microsoft.com/"), "_self"); }else if (osString.search(/Mac/) != -1 ) { navigateToURL(new URLRequest("http://www.apple.com/"), "_self"); } else if (osString.search(/linux/i)!= -1) { navigateToURL(new URLRequest("http://www.tldp.org/"), "_self"); } } else { myCircle.graphics.clear(); myCircle.graphics.beginFill(0xFF0000); myCircle.graphics.drawCircle(100, 150, Number(e.text)); myCircle.graphics.endFill(); } } } }
TEXT_INPUT | Sabit |
public static const TEXT_INPUT:String = "textInput"
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Bir textInput
olay nesnesinin type
özelliğinin değerini tanımlar.
Not: Delete veya Backspace tuşları için bu olay gönderilmez.
Bu olay şu özelliklere sahiptir:
Özellik | Değer |
---|---|
bubbles | true |
cancelable | true ; varsayılan davranışı iptal etmek için preventDefault() yöntemini çağırır. |
currentTarget | Bu Event nesnesini olay dinleyicisiyle etkin olarak işleyen nesne. |
target | Karakterlerin girildiği metin alanı. Hedef her zaman olay dinleyicisini kaydeden görüntüleme listesindeki nesne değildir. Geçerli olarak olayı işleyen görüntüleme listesindeki nesneye erişmek için currentTarget özelliğini kullanın. |
text | Kullanıcı tarafından girilen karakter veya karakter dizisi. |
İlgili API Öğeleri
Örnek ( Bu örnek nasıl kullanılır? )
Başlangıç talimatları, kullanıcı girdisi ve uyarı (hata) mesajları için üç metin alanı oluşturulur. textInputHandler()
yöntemi tetiklenerek kullanıcının metin girdisi yanıtına bir olay dinleyicisi eklenir. (Kullanıcı her metin girdiğinde bir TextEvent.TEXT_INPUT
olayı gönderilir.
Not: Kullanıcı, herhangi bir klavye girdisine yanıt niteliğinde olmayan geri tuşu gibi bir karakter girdiğinde text olayları gönderilir. Tüm keyboard olaylarını yakalamak üzere, KeyboardEvent
olayı için bir dinleyici kullanın.)
textInputHandler()
yöntemi, kullanıcı girdisini denetler ve yönetir. Adobe Flash Player'ın girdi metin alanındaki metni hemen görüntülemesini önlemek için preventDefault()
yöntemi kullanılır. Bu uygulama, alanın güncellenmesinden sorumludur. Kullanıcının önceden girilmiş (result
dizesi)karakterleri silmesini veya değiştirmesini geri almak için, bir kullanıcı yeni karakter girdiğinde, girdi metin alanının içeriği result
dizesine yeniden atanır. Ayrıca tutarlı bir kullanıcı deneyimi sağlamak için, setSelection()
yöntemi, ekleme noktasını (düzeltme) metin alanındaki en son seçilen karakterin sonrasına yerleştirir.
textInputHandler()
yöntemindeki ilk if ifadesi, birleşik anahtarın sayı olması gereken ikinci ve beşinci karakter konumlarının girdisini kontrol eder. Kullanıcı girdisi doğruysa, updateCombination()
yöntemi çağrılır ve (result
) birleşik anahtarı dizesi kullanıcı girdisine eklenir. updateCombination()
yöntemi ayrıca seçilen karakterden sonraki ekleme noktasını da hareket ettirir. Yedi karakter girildikten sonra, textInputHandler()
yöntemindeki son if deyimi, inputTextField
metin alanının türünü INPUT
türünden DYNAMIC
, türüne değiştirir; bu, kullanıcının artık karakter giremeyeceğini veya değiştiremeyeceğini gösterir.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; import flash.text.TextFieldAutoSize; import flash.events.TextEvent; public class TextEvent_TEXT_INPUTExample extends Sprite { private var instructionTextField:TextField = new TextField(); private var inputTextField:TextField = new TextField(); private var warningTextField:TextField = new TextField(); private var result:String = ""; public function TextEvent_TEXT_INPUTExample() { instructionTextField.x = 10; instructionTextField.y = 10; instructionTextField.background = true; instructionTextField.autoSize = TextFieldAutoSize.LEFT; instructionTextField.text = "Please enter a value in the format A#AA#AA,\n" + "where 'A' represents a letter and '#' represents a number.\n" + "(Note that once you input a character you can't change it.)" ; inputTextField.x = 10; inputTextField.y = 70; inputTextField.height = 20; inputTextField.width = 75; inputTextField.background = true; inputTextField.border = true; inputTextField.type = TextFieldType.INPUT; warningTextField.x = 10; warningTextField.y = 100; warningTextField.autoSize = TextFieldAutoSize.LEFT; inputTextField.addEventListener(TextEvent.TEXT_INPUT, textInputHandler); this.addChild(instructionTextField); this.addChild(inputTextField); this.addChild(warningTextField); } private function textInputHandler(event:TextEvent):void { var charExp:RegExp = /[a-zA-z]/; var numExp:RegExp = /[0-9]/; event.preventDefault(); inputTextField.text = result; inputTextField.setSelection(result.length + 1, result.length + 1); if (inputTextField.text.length == 1 || inputTextField.text.length == 4) { if(numExp.test(event.text) == true) { updateCombination(event.text); } else { warningTextField.text = "You need a single digit number."; } }else { if(charExp.test(event.text) == true) { updateCombination(event.text); } else { warningTextField.text = "You need an alphabet character."; } } if(inputTextField.text.length == 7) { inputTextField.type = TextFieldType.DYNAMIC; instructionTextField.text = "CONGRATULATIONS. You've done."; } } private function updateCombination(s:String):void { warningTextField.text = ""; result += s; inputTextField.text = result; inputTextField.setSelection(result.length + 1, result.length + 1); } } }
- Bu örnek, ileride kullanılacak iki URL'nin sabitlerini bildirir.
- Bu örnek, ileride kullanılacak TextField türünde iki değişken bildirir.
- Sınıf yapıcı, şu iki yöntemi çağırır:
init()
, TextField nesnelerini başlatır ve bunlara olay dinleyicileri ekler.draw()
, görüntüleme listesine TextField ekler ve görüntülenecek metni atar.
linkHandler()
vetextInputHandler()
dinleyicileri, olay türüne göre olaylara karşılık verir.linkHandler()
yöntemi, henüz bir web tarayıcısı açılmamışsa, web tarayıcısı açar ve tıklatılan URL'ye gider.textInputHandler()
yöntemi, her tuşa basıldığında ilişkili alanda bilgi görüntüler.
Not: Bu örnekte gösterilen etki alanı kurgusal olup [yourDomain]
öğesinin gerçek bir etki alanıyla değiştirilmesi gerekir.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; import flash.text.TextFieldAutoSize; import flash.events.TextEvent; import flash.events.TextEvent; import flash.net.URLRequest; import flash.net.navigateToURL; public class TextEventExample extends Sprite { private const DOMAIN_1_URL:String = "http://www.[yourDomain].com"; private const DOMAIN_2_URL:String = "http://www.[yourDomain].com"; private var linkTxt:TextField; private var textInputTxt:TextField; public function TextEventExample() { init(); draw(); } private function init():void { linkTxt = new TextField(); linkTxt.addEventListener(TextEvent.LINK, linkHandler); linkTxt.height = 60; linkTxt.autoSize = TextFieldAutoSize.LEFT; linkTxt.multiline = true; textInputTxt = new TextField(); textInputTxt.addEventListener(TextEvent.TEXT_INPUT, textInputHandler); textInputTxt.type = TextFieldType.INPUT; textInputTxt.background = true; textInputTxt.border = true; textInputTxt.height = 20; } private function draw():void { addChild(linkTxt); linkTxt.htmlText += createLink(DOMAIN_1_URL, "Click to go to first domain"); linkTxt.htmlText += "<br />"; linkTxt.htmlText += createLink(DOMAIN_2_URL, "Click to go to second domain"); addChild(textInputTxt); textInputTxt.y = linkTxt.height; textInputTxt.text = "type here"; } private function createLink(url:String, text:String):String { var link:String = ""; link += "<font color='#0000FF'>"; link += "<u>"; link += "<b>"; link += "<a href='event:" + url + "'>" + text + "</a>"; link += "</b>"; link += "</u>"; link += "</font>"; return link; } private function linkHandler(e:TextEvent):void { var request:URLRequest = new URLRequest(e.text); navigateToURL(request); } private function textInputHandler(e:TextEvent):void { trace(">> ============================"); trace(">> e.text: " + e.text); trace(">> textInputTxt.text: " + textInputTxt.text); } } }
Tue Jun 12 2018, 01:09 PM Z