カテゴリー
未分類

TextAreaへのStyleSheet適応

fl.controls.TextAreaクラス。
納品物として使うことはまずないのだけど、デバッグとかでアウトプット表示に使うことは多あります。で、そのアウトプットテキストの中にシーン遷移のリンクを入れたりしたい時に、StyleSheetを適応するとだろと。
で、以前はTextAreaに”stylesheet”というプロパテイがあった気がするのですが、今見てみると無い。(そのかわり”textField”というプロパティが追加されて、コンポーネント内部のtextFieldが直接参照できるようになっている。
で、textField.stylesheetとしてOKか?と言われるとそんなことは無く、

Error: Error #2009: このメソッドは、スルシートを使用するテキストに対しては使用できません。
at .text::TextField/setTextFormat()
at fl.controls::TextArea/drawTextFormat()
at fl.controls::TextArea/draw()
at fl.core::UIComponent/callLaterDispatcher()

こんなが戻って来ます。
基本的にtextFieldでするんだから、styleSheet等使うんじゃない!ゴルァ!と言う感じの対応ですが、かろうじて”drawTextFormat”が”protected”なので、extendsで対応することにします。

こんな感じでとりあえず使えるようになります。
ただそもそもが何故StyleSheetを使用不可にしたのか?
的に解決できないバグがあるのか?は不明です。
その辺ご了承ください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です