Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Не форматируется Текст Выведенный Из *txt С Помщью Loadvars()
Flash Zone Forum > Macromedia Flash > Начинающим
Дож
Доброго времени суток!
Снова вопрос новичка:
В динамическом текстовом поле отображаю тектовой содержание файла *txt
следующим способом:
Код
my_lv = new LoadVars();
my_lv.onLoad = function(ok) {
if (ok) {
ctrP1_mcl.fld_txt.htmlText = this.message;
}
};
my_lv.load("mon_sk.txt");

При этом формат для поля заданный таким образом:
Код
var myFormat:TextFormat = new TextFormat();
myFormat.font="Arial";
myFormat.size=20;
ctrP1_mcl.fld_txt.setTextFormat (myFormat);

не применяется к отображаемому тексту. Может в таких случаях
делают по другому? Тогда как?
Я пробывал поставить:
Код
ctrP1_mcl.fld_txt.html= true;

и затем прописать вместо:
Код
ctrP1_mcl.fld_txt.text = this.message;

вот это:
Код
ctrP1_mcl.fld_txt.htmlText = this.message;

Тогда покрайней мере работают тэги html разметки, к примеру: <i></i>
А к примеру <h3></h3> нет.
Скажите если не трудно, другого более полноценного способа(не html) форматировать отображение такого именно текста нет? Видимо я что то в лит-ре не верно понял, и если не сложно разъясните в чём мой подход не верен?
Большое спасибо!
tiHo
попробуй сделай описание TextFormat, в событии onLoad твоих LoadVars'ов:

Код
my_lv = new LoadVars();

my_lv.onLoad = function(ok) {

if (ok) {

var myFormat:TextFormat = new TextFormat();

myFormat.font="Arial";

myFormat.size=20;
//____________________________________
ctrP1_mcl.fld_txt.html=true;

ctrP1_mcl.fld_txt.setTextFormat (myFormat);

ctrP1_mcl.fld_txt.htmlText = this.message;
//____________________________________

}
};
my_lv.load("mon_sk.txt");
Дож
Приветствую,tiHo!!!
Сделал по твоему совету, но произошло тоже самое.
флеш не реагирует на:
Код
myFormat.font="Arial";

myFormat.size=20;


но то, что включён html это да но опять изменения в тексте только в тэгах <i></i>
tiHo
дарова smile.gif
щас я у себя сделаю и тогда выложу сюда.
tiHo
Код
var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(ok)
{
    if (ok)
    {
        var myFormat:TextFormat = new TextFormat();
        myFormat.font = "arial";
        myFormat.size = 20;
        clip.txt.border = 1;
        clip.txt.html = true;
        clip.txt.htmlText = this.message;
        clip.txt.setTextFormat(myFormat);
    }
};
my_lv.load("test.txt");

вот так работать будет smile.gif

PS> переделай имена переменных и адрес загрузки тхт файла на свои.
Дож
Всё заработало!
Спасибо!!! rolleyes.gif
tiHo
наздоровье
MustLive
Дож

На самом деле всё просто (в случае задания форматирования): нужно было вначале текст присвоить полю, а потом присвоить ему заданный формат.

Вначале:
Код
ctrP1_mcl.fld_txt.htmlText = this.message;

И лишь потом:
Код
ctrP1_mcl.fld_txt.setTextFormat (myFormat);

А не наоборот (как ты сделал). Тогда форматирование заработает, как ты смог уже увидеть на примере tiHo wink.gif.

Цитата
Тогда покрайней мере работают тэги html разметки, к примеру: <i></i>
А к примеру <h3></h3> нет.
...
но то, что включён html это да но опять изменения в тексте только в тэгах <i></i>

Не только тег <i>, но и ряд других html тегов, которые поддерживает Флеш.

Флеш в AS 2.0 поддерживает следующие теги: <a>, <b>, <br>, <font>, <img>, <i>, <li>, <p>, <span>, <textformat>, <u>.
Дож
MustLive

Огромное спасибо за разъяснение! smile.gif
Вот так вот, новичкам всяким приходиться элементарные вещи вбивать в голову
хотя ведь читал уже порядке выполнения кодаsmile.gif)))
Русская версия IP.Board © 2001-2008 IPS, Inc.