Форум 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=91977)

motoroller 13.02.2007 11:47

Цикл по текстовым полям
 
Код:

//myArray = news.split("|");
af='gfgfg|fdfdfd|fff|fdfd'
myArray= af.split("|");
var i:String;
var nameField:String;

posY=50;

for (i in myArray)
{
nameField='test_txt'+[i];
trace(nameField);
posY+=10;

this.createTextField(nameField, 10, 50, posY, 300, 100);
nameField.multiline = true;
nameField.wordWrap = true;
nameField.autoSize = true;
nameField.text = myArray[i];

}


Kinsler 13.02.2007 11:49

ты откуда i берешь а?

motoroller 13.02.2007 11:55

Цитата:

Сообщение от Kinsler
ты откуда i берешь а?

беру из массива! котоый получается slitom

CorC 13.02.2007 11:56

а вопрос собственно в чем?

motoroller 13.02.2007 11:59

Цитата:

Сообщение от CorC
а вопрос собственно в чем?

Вопрос как создать динамические поля в цикле !!!!!!

motoroller 13.02.2007 11:59

у меня \то не получается, можете написать код, где поля создаются в цикле, допустим

Код:

for (i=0; i<10; i++)
{
// процесс создания динамического поля
}


CorC 13.02.2007 12:04

nameField это строка а вы к ней обращаетесь как к полю
createTextField параметры перепутаны местами
autoSize не так используется
и вы наверно еще 1 плюс хотите заработать за оформление

Kinsler 13.02.2007 12:05

вот так попроще:
Код:

af='gfgfg|fdfdfd|fff|fdfd'
myArray= af.split("|");
var s = myArray.length;

//var nameField:String;

posY=50;

for (i=0; i<=s; i++)
{


trace(i);
_root.createTextField("nameField"+i, i, 50, posY*i, 300, 100);
_root["nameField"+i].border= true;

//nameField.multiline = true;
//nameField.wordWrap = true;
//nameField.autoSize = true;
_root["nameField"+i].text = myArray[i];

}


motoroller 13.02.2007 12:08

мне просто надо принцип, понять, а насчёт autosize скажите как использовать, чтобы автоматом был под размер текста

etc 13.02.2007 12:12

motoroller получает предупреждение за нарушение пункта 3 правил раздела.
Оформите свой код, как полагается.

CorC 13.02.2007 12:12

F1 по autosize
Код:

af = "gfgfg|fdfdfd|fff|fdfd";
myArray = af.split("|");
var i:String;
var nameField:String;
var posY:Number = 50;
for (i in myArray) {
        nameField = "test_txt"+i;
        posY += 10;
        this.createTextField(nameField, i, i*posY,0,0,0);
        aaa=this[nameField];
        aaa.multiline = true;
        //aaa.wordWrap = true;
        aaa.autoSize = "left";
        aaa.text = myArray[i];
}


motoroller 13.02.2007 13:32

Всё работает только проблема, что текст друг на друга наезжает, пробовал что-то вроде

Код:

af="hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh|gfgfdgdkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkfgggggggggg|fffffkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkffffffffffffffffff|ffffffffkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkfffffff|";
myArray = af.split("|");

posY=0;

for (i in myArray)
{

posY=(_root.showNews["nameField"+i-1]._height)+30;

_root.showNews.createTextField("nameField"+i, i, 10, posY, 310, 100);

_root.showNews["nameField"+i].multiline= true;
_root.showNews["nameField"+i].wordWrap= true;
_root.showNews["nameField"+i].autoSize= trace;
_root.showNews["nameField"+i].html = true;



         
if(i%2==0)
_root.showNews["nameField"+i].htmlText ="<font color='#FFFFFF'>"+myArray[i]+"</font>";

else
_root.showNews["nameField"+i].htmlText ="<font color='#FF0033'>"+myArray[i]+"</font>";

}


CorC 13.02.2007 13:39

тогда считай количество букв, ширину и след строй без наездов :)

motoroller 13.02.2007 13:41

а никак нельзя вычислить высоту текстового поля? А вот ведь шрифт может измениться размер и это прям гимор будет :(

Kinsler 13.02.2007 13:41

motor
а нафиг тебе много текстовых полей?
не проще ли все в одно грузить?

motoroller 13.02.2007 13:48

Ты прав тоже резонно :)

motoroller 13.02.2007 13:49

Скажи а как сделать чтобы динамическое поле было прозрачным, я то на чёрном фоне у меня белый квадрат !!

etc 13.02.2007 13:52

Выключить у него Background.


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

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