AS3使用Flash CS4创建组件

AS3使用Flash CS4创建组件,flash,actionscript-3,custom-component,flash-v3-components,Flash,Actionscript 3,Custom Component,Flash V3 Components,我想创建一个基本组件,包括一个文本框和它旁边的一个标签(换句话说,一个InputText和一个StaticText) 我只需要设置并获取输入文本框中的文本,静态文本将保持原样 任何帮助都将不胜感激! Jasco这听起来有点模糊 Sprite中可以有两个文本字段,类似于: package { import flash.display.*; import flash.text.*; /** * @author georgeprofenza */ p

我想创建一个基本组件,包括一个文本框和它旁边的一个标签(换句话说,一个InputText和一个StaticText)

我只需要设置并获取输入文本框中的文本,静态文本将保持原样

任何帮助都将不胜感激!
Jasco

这听起来有点模糊

Sprite中可以有两个文本字段,类似于:

package {
    import flash.display.*;
    import flash.text.*;
    /**
     * @author georgeprofenza
     */
    public class FormItem extends Sprite {

        private var _label:TextField;
        private var _input:TextField;

        public function FormItem() {
            init();
        }

        private function init():void{
            _label = new TextField();
            _label.defaultTextFormat = new TextFormat('Arial',12,0x000000);
            _label.selectable = false;

            _input = new TextField();
            _input.defaultTextFormat = new TextFormat('Arial',12,0x000000);
            _input.type = TextFieldType.INPUT;
            _input.border = true;
            _input.x = _label.width + 5;

            addChild(_label);
            addChild(_input);
        }

        public function get labelText():String{
            return _label.text;
        }
        public function get inputText():String{
            return _input.text;
        }
        public function set labelText(text:String):void{
            _label.text = text;
            _input.x = _label.width + 5;
        }
        public function set inputText(text:String):void{
            _input.text = text;
        }
    }
}
或者你可以全力以赴,开发一个合适的flash组件,这会很方便

不过有一些您可以使用。

“最简单”的版本是使用标签和文本输入组件,将它们放在MovieClip中,并创建组件定义:

  • 在MovieClip中添加标签和文本输入组件
  • 将标签实例命名为:
  • 命名TextInput组件
  • 在中的电影剪辑上单击鼠标右键 库并选择组件 定义:
  • 定义所需的属性 要修改,如标签在组件定义面板中输入:
  • 将定义的属性链接到 带有一点 动作脚本:

    如果(this.label)labelComponent.text=this.label; 如果(this.input)inputComponent.text=this.input


  • 祝你好运

    这听起来有点模糊

    Sprite中可以有两个文本字段,类似于:

    package {
        import flash.display.*;
        import flash.text.*;
        /**
         * @author georgeprofenza
         */
        public class FormItem extends Sprite {
    
            private var _label:TextField;
            private var _input:TextField;
    
            public function FormItem() {
                init();
            }
    
            private function init():void{
                _label = new TextField();
                _label.defaultTextFormat = new TextFormat('Arial',12,0x000000);
                _label.selectable = false;
    
                _input = new TextField();
                _input.defaultTextFormat = new TextFormat('Arial',12,0x000000);
                _input.type = TextFieldType.INPUT;
                _input.border = true;
                _input.x = _label.width + 5;
    
                addChild(_label);
                addChild(_input);
            }
    
            public function get labelText():String{
                return _label.text;
            }
            public function get inputText():String{
                return _input.text;
            }
            public function set labelText(text:String):void{
                _label.text = text;
                _input.x = _label.width + 5;
            }
            public function set inputText(text:String):void{
                _input.text = text;
            }
        }
    }
    
    或者你可以全力以赴,开发一个合适的flash组件,这会很方便

    不过有一些您可以使用。

    “最简单”的版本是使用标签和文本输入组件,将它们放在MovieClip中,并创建组件定义:

  • 在MovieClip中添加标签和文本输入组件
  • 将标签实例命名为:
  • 命名TextInput组件
  • 在中的电影剪辑上单击鼠标右键 库并选择组件 定义:
  • 定义所需的属性 要修改,如标签在组件定义面板中输入:
  • 将定义的属性链接到 带有一点 动作脚本:

    如果(this.label)labelComponent.text=this.label; 如果(this.input)inputComponent.text=this.input


  • 祝你好运

    谢谢你,乔治!我想你的最新版本就是我想要的。现在,我将努力解决这个问题。谢谢你,乔治!我想你的最新版本就是我想要的。现在,我将尝试解决这个问题。