2016-09-20 38 views
0

我正在學習AS3,並且正在用閃爍的光標編程打字機效果。現在我在「作弊」移動閃爍的光標。有沒有辦法在屏幕上顯示字符串的座標?AS3:查找字符串數組的座標

var myString:String = "Lore Ipsum"; 
var myArray:Array = myString.split(""); 

stage.addEventListener(KeyboardEvent.KEY_DOWN, myKeyDown); 

function myKeyDown(e:KeyboardEvent):void{ 
    tf.appendText(myArray.shift()); 
    BlinkingCursor.x = BlinkingCursor.x + 5; 
} 
+0

不適合網頁設計。這是本地動畫。 –

回答

0

,如果你還沒有準備好,檢查TextField對象的API(假設你使用一個文本框和「TF」代表它):http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextField.html

應該有一些方法和屬性這可以幫助。快速瀏覽TextField。 getLineLength()可能會有所幫助,因爲它似乎可以返回一行中的字符數(如果使用等寬字體,可以通過字符寬度乘以)。

如果您使用的是單行文本,您可能只需使用TextField.textWidth屬性。

+0

是的。我需要學習更多。現在我已經做了一個可以工作的混亂代碼。 –

0

未經測試,但你可以嘗試:

function myKeyDown(e:KeyboardEvent):void{ 
    tf.appendText(myArray.shift()); 
    BlinkingCursor.x = (tf.x + tf.width) + 5; 
} 

和有關...

有沒有一種方法來找到字符串的座標,當它們被顯示在屏幕上 ?

您應該已經知道,因爲您將textField放置在屏幕上的第一位。只是爲了確認:

  • 你使用tf.x = & tf.y =addChild(tf)之前設置COORDS?
  • 請問trace("TF current X-pos : " + tf.x);是否喜歡你想要的?
+0

它不起作用。它返回始終爲0的tf的座標。textfiled(tf)被放置在0,0處,我想知道該texfield內的文本的座標。謝謝。 –