在Flex sdk 4.6中找不到TLFTextField

时间:2014-09-06 10:47:23

标签: actionscript-3 flash flex air

我正在尝试使用TLFTextField是一个AS3项目,我在编译某些代码时遇到了一些问题。我正在使用从http://www.adobe.com/devnet/flex/flex-sdk-download.html下载的FLex SDK 4.6。在课程开始时,我使用

import fl.text.TLFTextField;
public class Homepage{

    private var $:Global = Global.getInstance();
    //Constructor of the background
    public function Homepage(){
    var myTLFTextField:TLFTextField = new TLFTextField();
    myTLFTextField.x = 10;
    myTLFTextField.y = 10;
    myTLFTextField.width = 200
    myTLFTextField.height = 100;
    myTLFTextField.text = "This is my text";
}

但是我收到了错误:

Error: Definition fl.text:TLFTextField could not be found.

所以我将文件tlfRuntime.swc从flash CS5应用程序复制到与其他lib相同的文件夹中,代码编译但没有显示任何内容。 在adobe网站上,它说Flex SDK 4.6(http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fl/text/TLFTextField.html)支持TLFTextField

是否有人遇到同样的问题并设法使其正常运行? 谢谢, 西里尔

4 个答案:

答案 0 :(得分:0)

据我所知,LTF总是一个独立的库(它只是与Flex捆绑在一起)。你应该谷歌并下载最新版本。

此外,下载最新版本的Flex肯定会更好(如果您不限于以前的版本)。你可以做here。那里的安装程序还建议您下载所有第三方库,如TLF。

答案 1 :(得分:0)

看起来你需要addChild(myTLFTextField)

答案 2 :(得分:0)

正如您在语言参考中所看到的,fl。*包与Flash Authoring环境捆绑在一起。它使用TLF(文本布局框架),但它不适用于Flex或单独捆绑。

您可以在过滤产品时检查language reference中课程的可用性。

答案 3 :(得分:0)

非常感谢您的回答,它帮助我找到了解决方案。

我设法通过从flex.apache.org网站下载最新版本的Flex SDK(它似乎不适用于旧版本),在flex SDK中提供TLFTextField并复制文件(在MAC中) OS):

/Applications/Adobe Flash CS6/Common/Configuration/ActionScript 3.0/libs/tlfRuntime.swc

到文件夹

/flex/frameworks/libs/

要使用它,只需使用:

import fl.text.TLFTextField;

谢谢你们