Flash / AS3 ...设计师如何修改以编程方式添加的控件?

时间:2009-12-17 20:27:38

标签: flash actionscript-3

如果我要通过外部类向Flash项目添加表单(两个输入和一个按钮),那么另一个团队成员是否可以更改该表单的视觉特征(外观,大小,位置......等) .fla项目文件?

就目前而言,我假设我的AS3用户控件是在编译时添加的,因此无法从Flash IDE访问。但有没有办法可以通过IDE控制按钮的视觉特性,以及通过外部AS3类控制按钮的所有功能?

谢谢!

1 个答案:

答案 0 :(得分:1)

这绝对是可能的。正如您可以为FLA定义文档类一样,您可以为MovieClip执行类似的过程。

将库中的MovieClip(可能包含您的UI),右键单击并选择“属性”并展开该窗口。填写类似这样的内容:

alt text http://img163.imageshack.us/img163/9787/symbolproperties.png

从那里,您可以在ActionScript文件中定义基类,并通过在基类顶部定义它们来访问您在MovieClip中定义的实例变量对象。

  

MyCustomMC.as位于您的class_root / net / dostrosity / MyCustomMC.as中   Flash可能会抱怨您将MovieClip分配给此类   它还不存在。它将评论创建默认类   对你而言。点击复选框是一种确认Flash的方法   找到你的文件,点击铅笔将打开该文件进行编辑。

package net.dotstrosity.MyCustomMC {

import flash.display.MovieClip;

    public class MyCustomMC extends MovieClip {

        private var okBtn:MovieClip;
        private var cancelBtn:MovieClip;
        private var nameField:TextInput;

        public function MyCustomMC() {
            //constructor that can add mouse events
            //to okBtn and cancelBtn that were placed
            //inside your MovieClip on the stage and
            //given the instance names "okBtn" and "cancelBtn".

            okBtn.addEventListener(MouseEvent.CLICK, pressedOk);
        }

        private function pressedOk(e:MouseEvent):void {
            //do something else...maybe...
            nameField.txt.enabled = false; //pseudo crap code
        }
    }
}