Применение стилей для пользовательского TextArea в ActionScript 3 - PullRequest
0 голосов
/ 05 апреля 2010

У меня есть следующий код для создания и применения нескольких стилей для пользовательского TextArea в ActionScript 3.

public class MyCustomTextArea extends TextArea
{
  override protected function createChildren():void
  {
    super.createChildren();
    this.styleSheet.setStyle("sup", { display: "inline", fontFamily: "ArialSup", fontSize:"12"});
    this.styleSheet.setStyle("sub", { display: "inline", fontFamily: "ArialSub", fontSize:"12"});
    this.setStyle("fontFamily", "Arial");  
  }
}

У меня две проблемы с этим кодом.

this.styleSheetвсегда нулевой, когда я создаю экземпляр класса.Если this.styleSheet инициализируется новым StyleSheet (), чтобы избежать этой проблемы, то экземпляр TextArea, похоже, не распознает ни один из тегов HTML, которые можно использовать со свойством htmlText.эти два вопроса?Спасибо.

1 Ответ

2 голосов
/ 05 апреля 2010

Прежде всего - свойство styleSheet компонента TextArea по умолчанию имеет значение null - то, что вы видите, является ожидаемым поведением.

Вы также создаете свою таблицу стилей CSS необычным способом - возможно, отсюда ваши проблемы? Я бы попытался загрузить или определить встроенную таблицу стилей, чтобы применить ее к вашей текстовой области. Вот пример загрузки и применения таблицы стилей здесь: http://blog.flexexamples.com/2008/03/22/applying-a-cascading-style-sheet-to-a-textarea-control-in-flex/

Кроме того, что такое ArialSub и ArialSup? Если это неверные имена шрифтов, flex не сможет их распознать и использовать.

...