English 中文(简体)
AS3 create component using Flash CS4
原标题:

I would like to create a basic component consisting of a textbox and a label next to it (in other words an InputText and a StaticText).

I only need to set and get the text in the Input textbox, the static text will stay as is.

Any help would be highly appreciated! Jasco

最佳回答

This sounds a bit vague.

You could have two TextFields inside a Sprite, something like:

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;
        }
    }
}

Or you could go the full length and develop a proper flash component, this where this long article will come in handy.

The Yahoo! Astra components library has some nice components you could use though.

The easiest version is to use a Label and TextInput component, place them inside a MovieClip and create a Component Definition:

  1. Add the Label and TextInput Components in a MovieClip
  2. Name the Label instance:

label

  1. Name the TextInput component

input

  1. Right click the Movie Clip in the library and select Component Definition:

component definition 1

  1. Define the properties you want to modify, like label and input in the Component Definition Panel:

component definition 2

  1. Link the defined properties to the components with a bit of actionscript:

    if(this.label) labelComponent.text = this.label; if(this.input) inputComponent.text = this.input;

Goodluck!

问题回答

暂无回答




相关问题
Disable button tooltip in AS3

I want to disable the tooltip on certain buttons. The tooltip manager seems to be an all or nothing solution. Is it possible to disable the tooltip for just one or two buttons?

Sorting twodimensional Array in AS3

So, i have a two-dimensional Array of ID s and vote count - voteArray[i][0] = ID, voteArray[i][1] = vote count I want the top 3 voted items to be displayed in different colors, so i have a 2nd Array -...

Virtual Tour using sketch up, ajax, flash technologies

I want to know if there are existing technology that make your 3d models in sketch into virtual tours, using either Ajax or Flash for web presentation. If there s none, which will be a good approach ...

AS3 try/catch out of memory

I m loading a few huge images on my flex/as3 app, but I can t manage to catch the error when the flash player runs out of memory. Here is the what I was thinking might work (I use ???? because i dont ...

Red5 Security Tutorial

I am looking for a step by step tutorial on securing Red5 from intrusion. This seems to be a question that comes up alot in a google search, but is never really answered in a way that makes sense to ...

Clipboard access using Javascript - sans Flash?

Is there a reliable way to access the client machine s clipboard using Javascript? I continue to run into permissions issues when attempting to do this. How does Google Docs do this? Do they use ...

visible property of DisplayObject

For example I have a hierarchy of movie clips. mc1 is a child of mc, and mc2 is a child of mc1. Turns out that when I set mc1.visible = false; mc2.visible stays true. Is that supposed to happen?...

热门标签