Как изменить цвета текстовой области в ActionScript?

StackOverflow https://stackoverflow.com/questions/174986

  •  05-07-2019
  •  | 
  •  

Вопрос

Я создаю TextArea в actionscript:

var textArea:TextArea = new TextArea();

Я хочу, чтобы у него был черный фон. Я пробовал

textArea.setStyle("backgroundColor", 0x000000);

и я пробовал

textArea.opaqueBackground = 0x000000;

но TextArea остается белым. Что мне делать?

Это было полезно?

Решение

TextArea - это компонент пользовательского интерфейса, созданный из TextField и других встроенных классов Flash и компонентов UIComponents. Как и с большинством компонентов Adobe UI, при настройке свойств все выглядит иначе. Чтобы установить цвет области за текстом в TextArea, вам необходимо установить непрозрачный фон его внутреннего TextField с помощью свойства textField:

var textArea:TextArea = new TextArea()
textArea.textField.opaqueBackground = 0x000000;

Конечно, теперь, когда фон черный, текст также не может быть черным, поэтому мы изменим его цвет, используя новый TextFormat:

var myFormat:TextFormat = new TextFormat();
myFormat.color = 0xffffff;
textArea.setStyle("textFormat",myFormat);

затем просто установите текст и добавьте на сцену:

textArea.text = "hello";
addChild(textArea); 

Кроме того, если вы хотите немного больше контроля, здесь есть хороший класс расширения, который устраняет множество проблем с TextArea:

http://blog.bodurov.com/Post.aspx?postID=14

Другие советы

Вот что сработало для меня, что я обнаружил самостоятельно после просмотра обновленной документации AC3

TextArea - Цвет фона, AC3 2011

Я навсегда понял, что в AC3, по состоянию на сейчас (2011), они официально говорят вам использовать spark TextArea вместо mx

( s: TextArea вместо mx: TextArea )

<s:TextArea
id="joy_text"
color="0xFF0000"
contentBackgroundColor="0x000000"
text = "joy"
/>

Обратите внимание

color = font color

не забудьте включить в свои пространства имен: (вверху .mxml файла)

xmlns:s="library://ns.adobe.com/flex/spark"
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top