0

Flex 没有显示图像我已经尝试了很多网页来帮助我,任何人都可以帮助我

  <?xml version="1.0"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
        <mx:Script><![CDATA[
            public var photo:FileReference = new FileReference();

            protected function crop_clickHandler():void
            {
                var f:FileFilter = new FileFilter("Image", "*.jpg;*.jpeg;*;*.gif;*.png;");
                photo.addEventListener(Event.SELECT, fileSelected);
                photo.browse([f]);
            }

            private function fileSelected(evt:Event):void
            {
                photo.addEventListener(Event.COMPLETE,loadCompleted);
                photo.load();
            }

            private var loader : Loader = new Loader();

            private function loadCompleted(evt:Event):void
            {
                loader.contentLoaderInfo.addEventListener(Event.COMPLETE, getBitmapData);
                loader.loadBytes(photo.data);

            }

            private function getBitmapData(event:Event):void
            {
                var content:DisplayObject = loader.content;
                var BMPData:BitmapData = new BitmapData(content.width,content.height);

                //  var imgObj:Object = new Object();
                var bmd:BitmapData;
                bmd = Bitmap(event.currentTarget.content).bitmapData;
                var bmpMy:Bitmap = new Bitmap(bmd);
                myImage1.source=bmpMy
                // myImage1.addChild(DisplayObject(bmpMy));


            }
            ]]></mx:Script>

我什至尝试在加载后在此处显示图像,但它没有按照我尝试的方式工作

        <mx:Button id="btnLoad" label="Browse Image" click="crop_clickHandler()" ></mx:Button>
        <mx:Image id="myImage1" x="50" y="50" height="100%" width="100%" maintainAspectRatio="false" autoLoad="true" ></mx:Image>

    </mx:Application>
4

1 回答 1

0

您正在访问 FileReference 上的方法,这些方法在 flash player 9(Flex 3.6 的默认设置)中不可用。

您需要做的是目标 Flash Player 10.1 或更高版本。以下是针对 11.1 的说明,因为这是 Flex 4 附带的。

首先,在项目属性的“Flex Compiler”下更新目标播放器:

在此处输入图像描述

其次,转到 Flex Build Path 并从 Flex 3.6a 菜单下删除 playerglobal.swc。然后单击 Add SWC 并为目标播放器版本选择 playerglobal.swc(查看 FLEX_SDK/frameworks/libs/player/11.1)。

在此处输入图像描述

之后不要忘记进行项目清理。

您现在应该能够按原样运行您的代码。

于 2013-09-19T20:50:48.403 回答