PDA

Просмотр полной версии : Как задать стиль сразу для всех динамично генерируемых текстовых полей


mff
19.03.2009, 15:40
Здравствуйте дорогие форумчане, уважаемый __etc, уважаемый iNils. :)
Подскажите, как задать стиль сразу для всех динамично генерируемых текстовых полей?
Вот кусочек оформленного кода:
var myformat:TextFormat = new TextFormat();
myformat.size = 12;
myformat.font = "Tahoma";

if (my_xml.firstChild.childNodes[4].childNodes.length != 0) {
for (var i = 0; i<my_xml.firstChild.childNodes[4].childNodes.length; i++) {
var tname = "uin_txt_9"+i;
_root.uins9_1.uins9.createTextField(tname,_root.uins9_1.uins9.getNextHighestDepth(),10,(30+16*i),200,20);
_root.uins9_1.uins9[tname].html = true;
_root.uins9_1.uins9[tname].htmlText = my_xml.firstChild.childNodes[4].childNodes[i].firstChild.nodeValue+" "+my_xml.firstChild.childNodes[4].childNodes[i].attributes.status+" "+my_xml.firstChild.childNodes[4].childNodes[i].attributes.price+" "+"<a href='http://support.php'>купить</a>";
_root.uins9_1.uins9[tname].setTextFormat(myformat);
}
}

Спасибо!

qazwsx
19.03.2009, 15:43
Ну вот так как написанно и задать. Если нужно чтобы текст каторый будет вводится в поле имел данный формат то setNewTextFormat, а setTextFormat приводит текст который уже находится в поле к данному формату.

mff
19.03.2009, 15:47
Мне кажеться, что это не совсем нормально, у меня много таких блоков и эта строчка меня убивает _root.uins9_1.uins9[tname].setTextFormat(myformat);

Я думаю что можно как то ко всем генерируемым полям применить или я ошибаюсь?

qazwsx
19.03.2009, 15:50
Нет конечно, это былобы глупо.
P.s Меня в вашем коде все строчки убивают :).

mff
19.03.2009, 15:55
Год во флэше не работал, приходиться всё вспоминать по крупицам

qazwsx
19.03.2009, 16:11
Тут незачем оправдыватся. Все когдато так писали :)

Волгоградец
19.03.2009, 16:47
Можно создать свой класс. А можно использовать прототипы.

qazwsx
19.03.2009, 16:52
Ради 1ой строчки? Тут задача не так обширна чтобы напрягатся в чем то...

mff
19.03.2009, 17:11
Ради 1ой строчки? Тут задача не так обширна чтобы напрягатся в чем то...да, задача не сложная, думаю класс, это уже лишнее...

qazwsx
19.03.2009, 17:16
Нет ну я полной картины то не вижу, я вижу только 10 строк кода и все...

mff
22.03.2009, 15:19
А какую картину вы хотите? Идёт парсинг XML, при разборе создаётся много текстовых полей в одном клипе. Задача присвоить этим полям одни и теже атрибуты, цвет, толщину, шрифт. Как это сделать для всех сгенерируемых полей в этом клипе?

mff
31.03.2009, 03:29
Делаю поиск, задача выделить жирным и покрасить в красный те текстовые поля, в которых встречается искомое слово:
var my_fmt:TextFormat = new TextFormat();
my_fmt.bold = true;
myformat.size = 12;
myformat.font = "Tahoma";
my_fmt.color = 0xFF0000;
search6_bt.onPress = function() {
if (search6_txt.text != "" && search6_txt.text != "search" && search6_txt.text.length>=2) {
for (var i = 0; i<coll6; i++) {
if (mb6["uin_txt_6"+i].text.indexOf(search6_txt.text) != -1) {
mb6["uin_txt_6"+i].setNewTextFormat(my_fmt);
}
}
} else {
Selection.setFocus(null);
search6_txt.text = "не менее 2 цифр";
}
};в красный краситься, но вот проблема в том, что шрифт теряет стиль, становиться каким то с "засечкамми", хотя я явно указываю, что он должен быть Tahoma

Подскажите, как сделать более правильно?

Спасибо!

iNils
31.03.2009, 05:10
Стиль my_fmt, а шрифт и размер задаете в myformat.

mff
31.03.2009, 18:01
Спасибо, меня устроило свойство textColor