0

在 Flex 4 中,我试图让一个简单的浏览按钮使用浏览按钮获取的文件名更新 TextInput 对象的文本字段。它不必是完整路径,我想要的只是显示的文件名。它仅在第二次点击浏览按钮后出现,而不是在我第一次选择文件后出现。这是我的代码:

import flash.net.FileReference;

        private var fileReferencer:FileReference = new FileReference();
        private var excelFilter:FileFilter = new FileFilter("*.xlsx", "*.xlsx;*.xls;");
        protected var fileName:String = new String("");

        protected function BrowseButton_clickHandler(event:MouseEvent):void
        {
            fileReferencer.browse([excelFilter]);
            fileName = fileReferencer.name;
            fileInputAddress.text = fileName;
        }

回顾一下,文件名仅在第二次点击浏览按钮时显示在我的 TextInput 框中。

我究竟做错了什么?

4

1 回答 1

1

Flash Player 是完全异步的。所以你不能在调用fileReferencer.browse(). 这就是为什么你有一个来自过去电话的名字。要修复您的代码,您应该订阅事件select并仅在事件cancel之后更改文本select(请参阅文档)。

于 2011-06-20T14:40:20.123 回答