AS3 создать компонент с помощью Flash CS4
-
19-09-2019 - |
Вопрос
Я хотел бы создать базовый компонент, состоящий из текстового поля и метки рядом с ним (другими словами, inputText и StaticText).
Мне нужно только установить и получить текст в текстовом поле ввода, статический текст останется как есть.
Любая помощь была бы высоко оценена!Джаско
Решение
Это звучит немного расплывчато.
У вас могло бы быть два текстовых поля внутри спрайта, что-то вроде:
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;
}
}
}
Или вы могли бы пойти на все и разработать надлежащий флэш-компонент, вот где это длинная статья пригодится.
Тот самый Yahoo!Библиотека компонентов Astra имеет некоторые приятные компоненты хотя тебе это могло бы пригодиться.
"Самый простой" вариант - использовать компонент Label и TextInput, поместить их внутрь видеоролика и создать определение компонента:
- Добавьте компоненты Label и TextInput в видеоролик
- Назовите экземпляр метки:
- Назовите компонент TextInput
- Щелкните правой кнопкой мыши видеоклип в библиотеке и выберите Компонент Определение:
- Определите свойства вы хотите чтобы изменять, как этикетка и входные данные на панели "Определение компонента":
Свяжите определенные свойства с компонентами с помощью actionscript:
if(this.метка) labelComponent.text = эта.метка;if(this.input) Входной компонент.текст = this.input;
Удачи!