Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Форматирование динамически подгружаемого текста (http://www.flasher.ru/forum/showthread.php?t=99983)

Дружище 16.08.2007 19:45

Форматирование динамически подгружаемого текста
 
Приветствую! Помогите плиз с форматированием динамического текста, который подгружается во флэшку! Естественно текстовые поля не читают форматирование! Через html теги не подходит, нужно сделать именно при помощи класса TextFormat! Заранее спасибо!


Код:

_root.createTextField("perv_txt",this.getNextHighestDepth(),50,50,100,110);
        var perv_format:TextFormat = new TextFormat();
            perv_format.color = 0xffffff;
                       
                perv_txt.variable = "1_but"
                perv_txt.border = true;
                perv_txt.autoSize = true;
                       
            perv_txt.setTextFormat(perv_format);

                loadVariables("123.txt", _root);


etc 16.08.2007 21:05

Дружище, отредактируйте свой пост и оформите код тегами [code][/code].

Benzin 02.09.2007 00:51

Дружище, а у меня ведь та же проблема.

Суть моего геморроя:

Создаю текстовое поле программно. Через LoadVars загружаю туда текст из .txt- файла. Создаю объект Textformat, внедрил шрифт в библиотеку, поставив все ему нужные флажки.
вот код:
Код:

//создание объекта форматирования
var style:TextFormat = new TextFormat();
style.font = "Arial";
style.size = 30;
tf.setTextFormat(style);

///создание тесктового поля и загрузка в него текста из файла
this.createTextField("tf", 10, 500, 300, 300, 500);
tf._x = 300;
tf._y = 400;
tf.wordWrap = true;
tf.embedFonts = true;
if(tf._height > 200) {
        tf.autoSize = "none";
        tf._height = 200;}
var zav:LoadVars = new LoadVars();
zav.onData = function (src:String):Void {
        if(src!=undefined) {
                tf.text = src;
        } else {
                tf.text = "Невозможно отобразить текст";
        }
}
zav.load("text.txt");

Если создавать динамическое поле руками и задавать ему шрифт через TextFormat, то все работает как надо. Но я не хочу весь текст впечатывать в флешку, а хочу чтоб все из txt-файла загружал.

Знающие люди, подскажите что я делаю не так?

Kikasso 02.09.2007 01:04

Хехе ,а кто будет говорить setNewTextFormat()? И кстати, чтобы с гарантией формат заграбить, сделайте текстовое поле, внедрите в него символы, напишите в нем что-нибудь (это принципиально) а потом
Код:

var fmt:TextFormat = my_txt_field.getTextFormat()

udaaff 02.09.2007 01:14

Benzin, вы пытаетесь в вашем коде применить формат к текстовому полю еще до его создания. После создания поля, как и сказал Kikasso, говорим:
Код:

tf.setNewTextFormat(style);
зы: третий и четвертый параметры в методе createTextField отвечают за координаты текстового поля, а не за его размеры.

Kikasso 02.09.2007 01:25

Цитата:

Сообщение от udaaff
Benzin, вы пытаетесь в вашем коде применить формат к текстовому полю еще до его создания.

Да, кстати, этого я не заметил ))
setNewTextFormat() отличается от setTextFormat() тем что второй форматирует уже имеющийся текст, а первый задает формат для текста который будет введен.

2 Дружище: забудьте про variable и loadVariables, есть свойство TextField.text и класс LoadVars для загрузки данных.

Benzin 02.09.2007 02:04

Вай, спасибо товарищи)))) Все заработало)) :yahoo:


Часовой пояс GMT +4, время: 08:17.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.