2011-10-26 51 views
0

如何使用AS3的加载程序类将图像加载到具有事件处理程序的按钮中?以下是我开始的。以下是我点击邮件时遇到的错误。使用加载程序添加图像,并使用事件处理程序生成图像按钮

AS:

//call function that starts loading my image 
callButtons(); 


function callButtons():void {  
     var spanish_url = root_path + "spanish.png"; 
     var spanish_loader = new Loader(); 
     spanish_loader.load (new URLRequest(spanish_url)); 

//on load complete call the spanishLoaded function 

     spanish_loader.contentLoaderInfo.addEventListener (Event.COMPLETE, spanishLoaded); 
} 


//add loaded image to my main_container set x,y and turn it into a button. 

    function spanishLoaded (e:Event):void { 
     var my_spanish:Loader = Loader(e.target.loader);  
     my_spanish.x = 1062; 
     my_spanish.y = 620; 
     main_container.addChild(my_spanish); 
     my_spanish.addEventListener (MouseEvent.CLICK, playSpanish); 
    } 

function playSpanish(){ 

     trace("IN SPANISH"); 
} 

当我点击舞台上的spanish.png我得到的错误是:ArgumentError: Error #1063: Argument count mismatch on MyVideoPlayer_CS4_fla::MainTimeline/playSpanish(). Expected 0, got 1.

我需要为Added EVT:的MouseEvent

回答

1

在你的函数spanishLoaded你添加一个事件监听器:

my_spanish.addEventListener (MouseEvent.CLICK, playSpanish); 

playSpanish功能会想到鼠标事件:

您有:

function playSpanish() 

这应该是:

function playSpanish (event:MouseEvent) 
相关问题