這個是今天要記錄的東西,在處理文本的時候,我們希望游標會顯示在游標裡面。其實這個方法很簡單,是一個網友問的問題,今天測試了一下。覺得有點奇怪。為什麼在測試的時候游標是顯示不到,而偏偏不在測試的時候開啟個swf檔案的時候,游標可以顯示出來,就是很奇怪。好,實現的方法也不是很難。
主要使用到 stage.focus這個屬性,將游標顯示到文本裡面去。方法很簡單。因為TextField就是繼承了互動類,是它的一個子類,所以可以實現這樣的效果。
focus : InteractiveObject
具有鍵盤焦點的互動式對象;如果沒有設定焦點,或者具有焦點的對象屬於調用對象無權訪問的安全沙箱,則為 null。 public function get focus():InteractiveObject
public function set focus(value:InteractiveObject):void
注意:測試的時候,重新開啟個編譯後的swf檔案(而在Ctrl+Enter的測試的時候,游標會不顯示出來) 這個時候,游標就會顯示出來。
package<br />{<br />import flash.display.Sprite;<br />import flash.text.TextField;<br />import flash.text.TextFieldType;<br />import flash.events.MouseEvent;<br />import flash.display.Stage;<br />import flash.events.*;</p><p>public class test extends Sprite<br />{<br />public function test( )<br />{<br />var txt:TextField = new TextField();<br />txt.border=true;<br />txt.type=TextFieldType.INPUT;<br />txt.width=200;<br />txt.height=20;<br />addChild(txt);<br />txt.x=12;<br />txt.y=25;<br /> stage.focus=txt;<br />}</p><p>}<br />}