2013-02-13 13 views
0

Я хочу передать название кнопки в часть переменной. Но не получил success.please help me.thank.передать имя кнопки переменной в функции

[Embed(source="desenler/k1r1.jpg", mimeType="image/jpeg")] 
     public var Imgk1r1:Class; 
[Embed(source="desenler/k1r2.jpg", mimeType="image/jpeg")] 
     public var Imgk1r2:Class; 


k1r1.addEventListener(MouseEvent.CLICK, onbi); 
k1r2.addEventListener(MouseEvent.CLICK, onbi); 

    private function onbi(e:MouseEvent):void { 

     bdWindow=new Imgk1r1().bitmapData; 

вместо этого, я хочу передать имя кнопки

bdWindow=new Img+button name+().bitmapData; 

Я попробовал

bdWindow=new ["Img"+e.currentTarget.name+"().bitmapData"]; 

, но он говорит: «Предпринята попытка не-конструктор. "

ответ

0

Вы очень близки. Поскольку Imgk1r1 является переменной this (независимо, что может быть в вашем случае), вы должны быть в состоянии получить доступ к нему с помощью обозначений квадратных скобок следующим образом:

private function onbi(e:MouseEvent):void 
{ 
    bdWindow = Bitmap(new this["Img"+DisplayObject(e.currentTarget).name]()).bitmapData; 
} 
+0

Привета Marcela, спасибо за ваш интерес, но он говорит; ReferenceError: Ошибка # 1065: Переменная Imgk1r1 не определена. \t at global/flash.utils :: getDefinitionByName() – user1332219

+0

Простите, я забыл, что вы вставляли изображения, а не экспортировали их для ActionScript. Образец отредактированного кода должен работать. – Marcela

+0

спасибо, Марсела. Благослови вас. – user1332219

Смежные вопросы