我正在学习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属性。
答案 1 :(得分:0)
未经测试但您可以尝试:
function myKeyDown(e:KeyboardEvent):void{
tf.appendText(myArray.shift());
BlinkingCursor.x = (tf.x + tf.width) + 5;
}
并且关于......
有没有办法在显示字符串时找到它们的坐标 在屏幕上?
您应该已经知道了,因为您首先将textField放在屏幕上。只是为了确认:
tf.x =
& tf.y =
在addChild(tf)
之前设置坐标?trace("TF current X-pos : " + tf.x);
是否符合您的要求?