Сначала позвольте мне предупредить вас, что я «старая школа», т. Е. Код находится на моей временной шкале, и единственные используемые классы были автоматически созданы, когда я добавил несколько новых шрифтов в Script1.swf, который является моим мувиклипом для встроенных шрифтов.
В первом кадре моего основного мувиклипа, который называется Round.fla, я загрузил Script1.swf, который содержит шрифты, использующие объект загрузчика. Я использую оператор трассировки, который показывает, что Script1_lb.swf загружен.
Я использую список (script1_lb) со значками ролика (jpg-изображение образца шрифта), а данные - это имя класса шрифта, например:
script1_lb.dataProvider.addItem( {icon:akaDora_mc, data:"akaDora"} );
Я хочу применить шрифт к текстовому полю (design_mc.info_txt), которое уже существует на сцене, поэтому этот код я использовал:
import flash.text.Font;
import flash.text.TextField;
var tff:TextFormat = new TextFormat();
var font:Font=new Font();
script1_lb.addEventListener(Event.CHANGE,getFont);
function getFont(event:Event):void {
tff.font = script1_lb.selectedItem.data;
MovieClip(parent).design_mc.info_txt.embedFonts = true;
MovieClip(parent).design_mc.info_txt.setTextFormat(tff.font);
}
При попытке применить шрифт akaDora я получаю следующую ошибку:
Ошибка типа: ошибка # 1034: сбой приведения типа: невозможно преобразовать «akaDora» во flash.text.TextFormat.
Я часами смотрю на это и читаю файлы справки, но, похоже, не вижу, чего мне не хватает. Может кто-нибудь помочь? Спасибо