Metin görüntülemeFlash Player 9 ve üstü, Adobe AIR 1.0 ve üstü Adobe Flash Builder ve Flash Professional gibi geliştirme araçları, metin görüntüleme için metinle ilgili bileşenler veya metin araçları da dahil olmak üzere birkaç seçenek sağlasa da, programlama yoluyla metin görüntülemenin en basit yöntemi bir metin alanı kullanmaktır. Metin türleriBir metin alanındaki metnin türü, kaynağına göre belirlenir:
Metin alanı içeriğini değiştirmeflash.text.TextField.text özelliğine bir dize atayarak dinamik metin tanımlayabilirsiniz. Aşağıdaki gibi, bir dizeyi doğrudan özelliğe atayabilirsiniz: myTextField.text = "Hello World"; Ayrıca aşağıdaki örnekte olduğu gibi, text özelliğine, komut dosyanızdaki bir değişkenden bir değer de atayabilirsiniz. package { import flash.display.Sprite; import flash.text.*; public class TextWithImage extends Sprite { private var myTextBox:TextField = new TextField(); private var myText:String = "Hello World"; public function TextWithImage() { addChild(myTextBox); myTextBox.text = myText; } } } Alternatif olarak, text özelliğine, uzak bir değişkenden bir değer atayabilirsiniz. Uzak kaynaklardan metin değerleri yüklemek için üç seçeneğiniz bulunmaktadır:
HTML metnini görüntülemeflash.text.TextField sınıfı, metin dizenizi, içeriği formatlamak için HTML etiketleri içeren bir metin dizesi olarak tanımlamak için kullanabileceğiniz bir htmlText özelliğine sahiptir. Aşağıdaki örnekte olduğu gibi, Flash Player veya AIR uygulamasının metni HTML olarak oluşturması için dize değerinizi htmlText özelliğine (text özelliğine değil) atamanız gerekir: var myText:String = "<p>This is <b>some</b> content to <i>render</i> as <u>HTML</u> text.</p>"; myTextBox.htmlText = myText; Flash Player ve AIR, htmlText özelliği için bir HTML etiketi ve varlığı altkümesini destekler. ActionScript 3.0 Başvurusu'ndaki flash.text.TextField.htmlText özellik tanımı, desteklenen HTML etiketleri ve varlıkları hakkında ayrıntılı bilgiler sağlar. htmlText özelliğini kullanarak içeriğinizi belirledikten sonra, içeriğinizin formatlamasını yönetmek için stil sayfalarını veya textformat etiketini kullanabilirsiniz. Daha fazla bilgi için, bkz. Metin biçimlendirme. Metin alanlarında görüntü kullanmaİçeriğinizi HTML metni olarak görüntülemenin diğer bir avantajı, metin alanına görüntü ekleyebilmenizdir. img etiketini kullanarak yerel veya uzak bir görüntüye başvurabilir ve görüntünün ilişkili metin alanı içinde görünmesini sağlayabilirsiniz. Aşağıdaki örnek, myTextBox adlı bir metin alanı oluşturur ve SWF dosyasıyla aynı dizinde saklanan ve bir göz içeren JPG görüntüsünü görüntülenen metne dahil eder: package { import flash.display.Sprite; import flash.text.*; public class TextWithImage extends Sprite { private var myTextBox:TextField; private var myText:String = "<p>This is <b>some</b> content to <i>test</i> and <i>see</i></p><p><img src='eye.jpg' width='20' height='20'></p><p>what can be rendered.</p><p>You should see an eye image and some <u>HTML</u> text.</p>"; public function TextWithImage() { myTextBox.width = 200; myTextBox.height = 200; myTextBox.multiline = true; myTextBox.wordWrap = true; myTextBox.border = true; addChild(myTextBox); myTextBox.htmlText = myText; } } } img etkiketi, JPEG, GIF, PNG ve SWF dosyalarını destekler. Bir metin alanında kayan metinBirçok durumda, metniniz, metni görüntüleyen metin alanından daha uzun olabilir. Veya bir kullanıcının bir defada görüntülenebilecek şekilde daha fazla metin girmesine olanak sağlayan bir girdi alanına sahip olabilirsiniz. Dikey veya yatay olarak uzun içeriği yönetmek için flash.text.TextField sınıfının kaydırma ile ilişkili özelliklerini kullanabilirsiniz. Kaydırma ile ilişkili özellikler arasında, TextField.scrollV, TextField.scrollH ile maxScrollV vemaxScrollH bulunur. Fare tıklatması veya tuşa basılması gibi olaylara yanıt vermek için bu özellikleri kullanın. Aşağıdaki örnek, belirli bir boyuta sahip olan ve alanın bir defada görüntüleyebileceğinden daha fazla metin içeren bir metin alanı oluşturur. Kullanıcı metin alanını tıklattığında, metin dikey olarak kayar. package { import flash.display.Sprite; import flash.text.*; import flash.events.MouseEvent; public class TextScrollExample extends Sprite { private var myTextBox:TextField = new TextField(); private var myText:String = "Hello world and welcome to the show. It's really nice to meet you. Take your coat off and stay a while. OK, show is over. Hope you had fun. You can go home now. Don't forget to tip your waiter. There are mints in the bowl by the door. Thank you. Please come again."; public function TextScrollExample() { myTextBox.text = myText; myTextBox.width = 200; myTextBox.height = 50; myTextBox.multiline = true; myTextBox.wordWrap = true; myTextBox.background = true; myTextBox.border = true; var format:TextFormat = new TextFormat(); format.font = "Verdana"; format.color = 0xFF0000; format.size = 10; myTextBox.defaultTextFormat = format; addChild(myTextBox); myTextBox.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownScroll); } public function mouseDownScroll(event:MouseEvent):void { myTextBox.scrollV++; } } } |
|