PDA

Просмотр полной версии : moveClip в textField ?


art-d
15.05.2006, 14:53
ув.знатоки!
возможно ли в текстовое поле засунуть мувик?
пример: печатается текст (эффект выпечатывания посимвольно) и в самом конце мигает курсор (мувик).
сделал отдельно выпечатывание и отдельно мувик, привязал мувик к ширине текстфилда + средний коэф.пропорции символов, получается, что курсор (нарисованый мувик) "убегает" при спец.симвлах (.,;: и т.д.) и заходит на текст при заглавных "широких" буквах (Ш Ж М W)
как быть???

iNils
15.05.2006, 14:55
Мувик засунуть нельзя.

art-d
15.05.2006, 15:05
а что посоветуете?
создавать для каждого символа таблицу ширины и потом текст разбивать в символьный массив и сравнивать? или есть решение попроще?..

iNils
15.05.2006, 15:20
Взять символ "|" и использовать за место курсор.

art-d
15.05.2006, 16:33
хех, это совсем просто =) до этого я и сам бы додумался, просто курсор, а точнее небольшой прямоугольник размером с символ, должен постоянно "плавно" мигать. символом заменить точно не плучится, приходится использовать только мувик... отсюда и проблема
_
про таблицы хоть я правильно мыслю? и, если не сложно, можно заценить пример, как это всё провернуть, т.е. разбить на массив и сравнивать ёё с таблицей, присваивая нужное смецение курсора, точнее каретки

AlexSol
15.05.2006, 16:54
var InFocus:Boolean = false;
inpyt_txt.onSetFocus = function() {
InFocus = true;
};
inpyt_txt.onKillFocus = function() {
InFocus = false;
};

далее по событию нажатия кнопки на клаве если этот параметр ==true, то берешь эначение клавиши и прогоняшь через массив

//
кстате можешь исользовать Courier New -там параметры букв одинаковы

motor4ik
15.05.2006, 16:57
не понял чем textWidth не устраивает

iNils
15.05.2006, 16:58
не понял чем textWidth не устраиваетОн только для одной строки подойдет, как тольок будет две так он сразу начнет показывать максимальную ширину среди строк.

iNils
15.05.2006, 17:06
хех, это совсем просто =) до этого я и сам бы додумался, просто курсор, а точнее небольшой прямоугольник размером с символ, должен постоянно "плавно" мигать. символом заменить точно не плучится, приходится использовать только мувик... отсюда и проблема
_
про таблицы хоть я правильно мыслю? и, если не сложно, можно заценить пример, как это всё провернуть, т.е. разбить на массив и сравнивать ёё с таблицей, присваивая нужное смецение курсора, точнее каретки
str = "ASDF asdfasdf as fasdfasdf ASDaa FASDF";
this.createTextField ("txt", 0, 100, 100, 100, 50);
this.txt.autoSize = true;
this.txt.wordWrap = true;
this.i = 0;
this.flag = 0;
this.onEnterFrame = function () {
this.flag++;
if (this.flag < 11) {
cursor = " |";
} else if (this.flag < 21) {
cursor = " ";
} else {
this.flag = 0;
}
if (this.i <= str.length) {
this.i += .5;
}
this.txt.text = str.substr (0, this.i) + cursor;
};

motor4ik
15.05.2006, 17:07
согласен, но ему думаю 2 и ненадо жирновато будет, пусть в одну все умещает.

art-d
15.05.2006, 17:23
всем ОГРОМНОЕ спасибо! выручили!