代码之家  ›  专栏  ›  技术社区  ›  jeffcook2150

传递文件引用完成事件的信息

  •  0
  • jeffcook2150  · 技术社区  · 15 年前

    我需要使用filereference传递一个字符串,或者在事件触发时提供该字符串作为参数。很明显,AS3不允许您在事件上传递参数,这让我很恼火。

    现在,我已经扩展了filereference类以包含一个附加变量。我正试图让它编译,但它不会编译;我想我不知道如何正确地导入这个类。如果你能告诉我如何正确导入这个类,这样我就不会再得到 Error: Type was not found or was not a compile-time constant 在编译时,那会很好。

    这是扩展文件引用类:

    import flash.net.FileReference;
    
    public class SxmFR extends FileReference {
    
      public var housenum:String = "";
    
      public function SxmFR(str:String) {
          housenum = str;
          super();
      }
    }
    

    我在一个.mxml和一个.中尝试过,就像在同一个文件夹中一样。两者都不会自动导入。

    我还尝试扩展事件类,但我无法确定如何进行事件调度,因为我需要对 Event.COMPLETE 事件。如果你能告诉我如何让它发送出去,它也可能工作。

    请帮我弄明白这件事,多爱多谢所有的参与。:)

    1 回复  |  直到 15 年前
        1
  •  2
  •   Markus Johnsson    15 年前

    如果将事件侦听器添加为闭包,则可以访问当前函数中的变量:

    function myFunction(): void {
        var aParam: String = "This is a parameter";
    
        dispatcher.addEventListener("eventName", function (e: Event): void {
            // you can access aParam here
            trace(aParam);
        });
    }
    

    这个 aParam 函数内部的值将与它在 addEventListener 被叫来。

    推荐文章