Actionscript - 带有外部文本文件的 TLFTextField,文件运行时不显示任何内容

凯莉·奥策尔

完全公开,这是我班级的作业。然而,这已经上交和分级了。我真的只是想知道为什么它不起作用。

我按照书中的步骤操作 TLFTextField 和外部文件。有用。然后我需要再添加 2 个带有 2 个外部文本文件的 TLFTextFields。当我现在运行它时,窗口弹出但空白。甚至不是原始的 TLFTextField 或文本文件显示,我知道以前工作过。我什至没有碰那个代码。没有错误。我无法弄清楚我哪里出错了。我同学也有同样的问题。

我的代码如下:

import fl.text.TLFTextField;
import fl.controls.UIScrollBar;
import flash.net.URLLoader;
import flash.net.URLRequest;

import flash.events.Event;
import flash.text.TextFormat;
import flash.events.KeyboardEvent;

var t:TLFTextField = new TLFTextField();
var tf:TextFormat = new TextFormat();
t.width = 500;
t.height = 600;
t.background = true;
t.paddingTop = 20;
t.paddingLeft = 20;
t.paddingRight = 20;
addChild(t);

var textLoad:URLLoader = new URLLoader();
textLoad.addEventListener(Event.COMPLETE, textLoaded);
textLoad.load(new URLRequest("sample.txt"));

function textLoaded(e:Event):void
{
    var txt:String = URLLoader(e.target).data as String;
    t.text = txt;
    tf.color = 0x003300;
    tf.font = "Arial";
    tf.size = 14;
    t.setTextFormat(tf);
}

var cat:TLFTextField = new TLFTextField();
var cf:TextFormat = new TextFormat();
cat.width = 500;
cat.height = 600;
cat.background = true;
cat.paddingTop = 20;
cat.paddingLeft = 20;
cat.paddingRight = 20;
addChild(cat);

var catLoad:URLLoader = new URLLoader();
catLoad.addEventListener(Event.COMPLETE, catLoaded);
catLoad.load(new URLRequest("cat.txt"));

function catLoaded(e:Event):void
{
    var txt:String = URLLoader(e.target).data as String;
    cat.text = txt;
    cf.color = 0xFCE5CD;
    cf.font = "Arial";
    cf.size = 16;
    cat.setTextFormat(cf);
}

var doctor:TLFTextField = new TLFTextField();
var df:TextFormat = new TextFormat();
doctor.width = 500;
doctor.height = 600;
doctor.background = true;
doctor.paddingTop = 20;
doctor.paddingLeft = 20;
doctor.paddingRight = 20;
addChild(doctor);

var doctorLoad:URLLoader = new URLLoader();
doctorLoad.addEventListener(Event.COMPLETE, doctorLoaded);
doctorLoad.load(new URLRequest("doctor.txt"));

function doctorLoaded(e:Event):void
{
    var txt:String = URLLoader(e.target).data as String;
    doctor.text = txt;
    df.color = 0x68E9E5;
    df.font = "Arial";
    df.size = 16;
    doctor.setTextFormat(df);
}


var formatClip:Formatter = new Formatter();
var showFormat:Boolean = true;

stage.addEventListener(KeyboardEvent.KEY_DOWN, showFormatter);

function showFormatter(e:KeyboardEvent):void
{
    if (e.keyCode == 70)
    {
        if (showFormat)
        {
            addChild(formatClip);
            formatClip.x = t.width;
            formatClip.addEventListener(MouseEvent.MOUSE_DOWN, drag);
            showFormat = false;
        }
        else
        {
            formatClip.removeEventListener(MouseEvent.MOUSE_DOWN, drag);
            removeChild(formatClip);
            showFormat = true;
        }
    }
}

function drag(e:Event):void
{
    formatClip.startDrag();
    formatClip.addEventListener(MouseEvent.MOUSE_UP, noDrag);
}

function noDrag(e:Event):void
{
    formatClip.stopDrag();
}

formatClip.fontList.addEventListener(Event.CHANGE, setFont);
formatClip.fontSizer.addEventListener(Event.CHANGE, setFontSize);
formatClip.colorPicker.addEventListener(Event.CHANGE, setColor);
formatClip.columnNum.addEventListener(Event.CHANGE, setColumns);

function setFont(e:Event):void
{
    tf.font = e.target.selectedItem.label;
    t.setTextFormat(tf);
    cf.font = e.target.selectedItem.label;
    cat.setTextFormat(cf);
    df.font = e.target.selectedItem.label;
    doctor.setTextFormat(df);
}

function setFontSize(e:Event):void
{
    tf.size = e.target.value;
    t.setTextFormat(tf);
    cf.size = e.target.value;
    cat.setTextFormat(cf);
    df.size = e.target.value;
    doctor.setTextFormat(df);
}

function setColor(e:Event):void
{
    tf.color = e.target.selectedColor;
    t.setTextFormat(tf);
    cf.color = e.target.selectedColor;
    cat.setTextFormat(tf);
    df.color = e.target.selectedColor;
    doctor.setTextFormat(tf);
}

function setColumns(e:Event):void
{
    t.columnCount = e.target.value;
    cat.columnCount = e.target.value;
    doctor.columnCount = e.target.value;
}

var scroller:UIScrollBar = new UIScrollBar();
scroller.move(t.x + t.width, t.y);
scroller.height = t.height;
scroller.scrollTarget = t;
addChild(scroller);
scroller.visible = false;

formatClip;
formatClip.addEventListener(MouseEvent.CLICK, setScrollbar);

function setScrollbar(e:Event):void
{
    if(t.textHeight > scroller.height)
    {
        scroller.visible = true;
    }
    else
    {
        scroller.visible = false;
    }
    t.scrollV = 1;
}

var catScroller:UIScrollBar = new UIScrollBar();
catScroller.move(cat.x + cat.width, cat.y);
catScroller.height = cat.height;
catScroller.scrollTarget = cat;
addChild(catScroller);
catScroller.visible = false;

formatClip;
formatClip.addEventListener(MouseEvent.CLICK, setCatScrollbar);

function setCatScrollbar(e:Event):void
{
    if(cat.textHeight > scroller.height)
    {
        catScroller.visible = true;
    }
    else
    {
        catScroller.visible = false;
    }
    cat.scrollV = 1;
}

var doctorScroller:UIScrollBar = new UIScrollBar();
doctorScroller.move(doctor.x + doctor.width, doctor.y);
doctorScroller.height = doctor.height;
doctorScroller.scrollTarget = doctor;
addChild(scroller);
doctorScroller.visible = false;

formatClip;
formatClip.addEventListener(MouseEvent.CLICK, setDoctorScrollbar);

function setDoctorScrollbar(e:Event):void
{
    if(doctor.textHeight > scroller.height)
    {
        doctorScroller.visible = true;
    }
    else
    {
        doctorScroller.visible = false;
    }
    doctor.scrollV = 1;
}
辉光洞

我不在家自动取款机。据我所知,代码看起来很可靠,但我想我知道那里会发生什么。尝试连续加载文件,这意味着首先加载 1 个文件,删除侦听器,然后加载文件 2,等等......我认为这应该可行。事件 EVENT.Complete 有可能触发所有其他侦听器。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

ActionScript:将变量从文本文件加载到_root

带有文本文件中心的 Gnuplot 椭球

从外部文本文件登录程序

QT资源文件-运行时不显示图像

如何使可执行文本文件运行带有参数的.jar文件

使用 grep 从文本文件中提取带有表达式的文本

如何在Linux中创建带有特定文本的文本文件?

创建带有增量文本的X文本文件的脚本

如何读取其中某些内容带有换行符的文本文件?

Windows搜索不索引带有.SQL扩展名的文本文件的内容

Perl CGI脚本错误地读取带有反斜杠的文本文件内容

从cron运行时,为什么此脚本没有输出到文本文件?

交互式删除文本文件中带有路径列出的文件

为什么不能创建带有文本文件的文件映射?

删除文本文件中带有“。”的行。批处理文件

从文本文件中删除带有反斜杠(////)的文件路径

如何使用Scala解析带有换行符的文本文件以构建CSV文件?

循环遍历文本文件并插入带有批处理文件的行

使用 shell 脚本从带有标头标记的文本文件创建 CSV 文件

外部化文本文件中typeInTextarea的内容

如何在Java中有效读取带有定界值的文本文件?

在所有行读取带有分隔符的文本文件

查找所有带有特定文本文件的计算机

ActionScript。无法从本地xls文件获取数据

音频录制的文件在Actionscript中损坏的问题

将带有数字的文本文件转换为二进制

打开带有 HTML 标签的文本文件时如何使用替换命令?

解析带有两个“空格”定界符的文本文件

带有空格分隔的Python 3文本文件列出