PDA

Просмотр полной версии : Особенности реализации текстовых полей Flash MX


Dagi
17.08.2003, 19:46
Может, это и банально - но для меня было открытием. Оказывается, текстовые поля Flash MX представляют собой текстовые поля Flash 5, помещенные в клипы. Д-тво:
TextField.prototype._proto_=MovieClip.prototype;
И к текстовому полю можно применить любой метод или свойство клипов. В принципе, это может быть даже полезно на практике.

Nox Noctis
18.08.2003, 20:01
ох уж мне эти сказочки... ох уж мне эти сказочники... :)

пример этой провокации можно в студию ?

сейчас будет сеанс черной магии с разоблачением :)))

Dagi
18.08.2003, 21:43
this.createTextField("pole",0,200,200,180,30);
pole.text="Кто то считает себя умнее всех";
TextField.prototype.__proto__=MovieClip.prototype;
pole.startDrag(true);

Поле начнет перемещаться за указателем мыши. Еще примеры?

Dagi
18.08.2003, 21:49
this.createTextField("pole",0,200,200,180,30);
pole.text="Кто то считает себя умнее всех";
TextField.prototype.__proto__=MovieClip.prototype;
pole.createEmptyMovieClip("intro",1); // В поле создаем клип
pole.intro.lineStyle(1);
pole.intro.moveTo(0,0);
pole.intro.lineTo(100,100); // В клипе рисуем линию

Dagi
18.08.2003, 21:51
Еще доказательство: к полям применимы свойства _xmouse и _ymouse, причем, они имеют собствкнную систему координат. Применимы и практически все остальные свойства из директории Properties.

Nox Noctis
18.08.2003, 21:57
ладно, убедил :)

я тупо скопировал твои строчки из первого сообщения и не посмотрел на то что ты там опечатался в прототипе...

Nox Noctis
18.08.2003, 22:04
но область применения всего этого как-то слабо представляется...

Dagi
18.08.2003, 22:18
Для практики это малополезно. Но чисто теоретически - познавательно. Что-то вроде применения swapDepths() не к клипам, а к фильмам.

Nox Noctis
19.08.2003, 14:53
а все ведь можно увидеть... надо только обратить внимание :)
this.createTextField("TF", 1, 0, 0, 0, 0);
TF.border = TF.autoSize=true;
TF.text = "Jackdaws love my big sphinx of quartz";
ASSetPropFlags(TF, null, 8, true);
теперь в листе переменных видим:
Edit Text: Target="_level0.TF"
variable = null,
text = "Jackdaws love my big sphinx of quartz",
...............
embedFonts = false, restrict = null, length = 37, tabIndex = undefined,
autoSize = "left",
_listeners = [object #1, class 'Array'] [
0:[movieclip:_level0.TF]
], condenseWhite = false, constructor = [function 'TextField'] {
prototype:[object #3, class 'Object'] {
scroll:[getter/setter] undefined,
...............
condenseWhite:[getter/setter] undefined
}
}, __proto__ = [object #3, class 'Object'],
__constructor__ = [function 'TextField']

Штрек
06.10.2003, 01:57
Оригинал написал(а) Dagi
Для практики это малополезно.
Меня крайне интересует вопрос подгрузки шрифтов по ходу
действия основного мува

http://www.flasher.ru/forum/showthread.php?threadid=49788

Мож подгрузкой swfки со шрифтом в pole
можно чего то выкрутить.
Заранее благодарен.