0

我创建了一个 Shortcuts 类,它接收一个影片剪辑,并在有人翻过它时为图标添加一个高亮。

chromeshortcut 是movieclip 的类名,但是看看会有几个图标,有没有更优雅的方法可以将这些mc 从库中检索到我的快捷方式类中?

我正在考虑存储所有 mc 类名的数组,但是否可以使用变量动态实例化对象?因此,new myclassname();,myclassname 是从数组中检索的变量。

import com.Shortcuts;


var aName:MovieClip = new chromeshortcut();

var shortcut:Shortcuts = new Shortcuts(aName);


shortcut.x = 200;
shortcut.y = 200;
addChild(shortcut);

快捷方式类:

  package com{

                import flash.display.*;
                import flash.events.*;
                import 

flash.net.*;


        public class Shortcuts extends MovieClip{

            private var highlight:MovieClip;

            public function Shortcuts(icon:MovieClip){

                highlight = new shortcuthighlight();


                highlight.x = highlight.x - highlight.width/2;
                highlight.y = highlight.y - highlight.height/2;
                highlight.visible = false;
                addChild(highlight);

                icon.x = icon.x - icon.width/2;
                icon.y = icon.y - icon.height/2;
                addChild(icon);


                this.addEventListener(MouseEvent.ROLL_OVER, addHighlight);
                this.addEventListener(MouseEvent.ROLL_OUT, removeHighlight);
            }


            public function addHighlight(evt:MouseEvent){

                highlight.visible = true;

            }

            public function removeHighlight(evt:MouseEvent){

                highlight.visible = false;

            }

        }





    }
4

1 回答 1

0

我认为您以错误的方式解决此问题 - 而不是将 MovieClips 传递到 Shortcuts 类中,您应该让 MovieClips 扩展 Shortcuts 类。

于 2012-05-24T02:17:28.067 回答