![]() |
|
||||||||||
|
|||||
|
Регистрация: Oct 2004
Сообщений: 141
|
Пытается сделатся вывод сообщений aka ConterStrike.
То есть в текстовое multiline поле выводятся сообщения, а потом они должны сдвигатся построчно. Верхняя (или нижняя) строчка при этом исчезают. Как в multiline поле вычленить строку? Можно сдвигать скроллом, но надо чтобы строки реально удалялись. Допоможите плиз. |
|
|||||
|
Код в 1 фрэйме;
_global.i = 1;
_global.j = 0;
_root.add_text = function(newText){
for(k=1; k<=i; k++){
_root["tf"+k]._y-=20;
}
this.createTextField("tf"+i, i, 0, 380, 550, 20);
_root["tf"+i].text=newText;
_global.i++;
}
_root.onEnterFrame = function(){
if(Math.floor(j/50)<i-1){
_global.j++;
_root["tf"+Math.floor(j/50)].removeTextField();
}
}
на сцену вешаешь input TextField с InstanceName "input_text" |
|
|||||
|
исходник вообщем
|
|
|||||
|
Цитата:
создаем временный текстфилд с autoSize=true и по нему смотрим сколько слов из основного текстфилда влезет по ширине, ну и удалим.. this.createTextField('_txt',0,0,0,180,140);
_txt.border=_txt.wordWrap=true;
_txt.text='То есть в текстовое multiline поле выводятся сообщения, а потом они должны сдвигатся построчно...'
TextField.prototype.delLine=function(){
var tmp_txt=_root.createTextField('tmp',_root.getNextHighestDepth(),0,0,0,0,0);
tmp_txt.autoSize=true;
var words=this.text.split(' ');
var i=0,s=tmp_txt.text;
while(tmp_txt._width<this._width) {
s=tmp_txt.text;
tmp_txt.text+=words[i++]+' ';
tmp_txt.setTextFormat(this.getTextFormat());
}
this.text=this.text.split(s).join('');
tmp_txt.removeTextField();
}
//повесим действие на клик
onMouseUp=function(){
_txt.delLine();
}
|
|
|||||
|
2silin
_root.getNextHighestDepth() - у тебя в примере разлелось. это я на всякий случай, чтобы не писали - "не работает" ![]() |
|
|||||
|
silin,
надо чтобы текст появлялся снизу, и с каждой новйо строчки поднимался вверх. |
|
|||||
|
Регистрация: Oct 2004
Сообщений: 141
|
Всем спасибо, решилось как всегда само,
по тику таймерА запускактся: var indexc = chatText.indexOf("<br>"); chatText= chatText.slice(indexc+4,chatText.length); Поле парсилось ака HTML Просто думалось, что если в scroll есть понимание строки в текстовом поле, то может его можно как - то использовать. Удаляет верхнее сообщение, что в принципе даже правильней чем отдельную строку. |
![]() |
![]() |
Часовой пояс GMT +4, время: 10:00. |
|
|
« Предыдущая тема | Следующая тема » |
|
|