Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Обращение к методу создания textfield, хлп (http://www.flasher.ru/forum/showthread.php?t=60631)

Gary 14.07.2004 13:48

Обращение к методу создания textfield, хлп
 
FPlayer 7, AS2 (правда не через классы-пока)
В наличии:
MovieClip.prototype.MyTxtField=function (depth_Txt, xx, y, width_Txt, h_Txt, colorTxt) {
this.createTextField("txtName", depth_Txt, xx, y, width_Txt, h_Txt);
this.txtName.html = true;
this.txtName.multiline=true
this.txtName.wordWrap = true;
this.txtName.scroll = true;
this.txtName.text = "...момент...загружаем информацию...";
};
this.MyTxtField(12,11,22,200,200)//первое поле
this.createEmptyMovieClip("df",30)//второе текстовое и только через новый клип, почему?
this.df.MyTxtField(20,20,39,300,300)
вопрос: почему нельзя несколько раз обратиться к методу MyTxtField? с заданием разной глубины? Только через создание мува-холдера.
вопрос:Если это из-за дублирования имени текстового поля - то КАк мне в методе CreateTextField вместо определенно прописанного имени "txtName" прописать переменную - name_of_text_field?

Если я пишу в прототипе
MovieClip.prototype.MyTxtField=function (name_of_text_field , depth_Txt, ......){
......
this.createTextField(name_of_text_field,...)
...}
, то ничего в метод создания текстового поля в качестве имени его ( name_of_text_field) не передается.
Даже более точное написание прототипа через
this.name_of_text= name_of_text_field и т..п. дополнения не помогает.
Спасибо!

fiot 14.07.2004 17:17

Код:


Object.prototype.MyTxtField = function(depth_Txt, xx, y, width_Txt, h_Txt, colorTxt) {
        this.createTextField(["txtName"+depth_Txt], depth_Txt, xx, y, width_Txt, h_Txt);
        this["txtName"+depth_Txt].html = true;
        this["txtName"+depth_Txt].multiline = true;
        this["txtName"+depth_Txt].wordWrap = true;
        this["txtName"+depth_Txt].scroll = true;
        this["txtName"+depth_Txt].text = "...ìîìåíò...çàãðóæàåì èíôîðìàöèþ...";
};
MyTxtField(12, 50, 22, 200, 200);
MyTxtField(13, 11, 100, 200, 200);


Gary 14.07.2004 17:42

спасибо, но почему Object вместо MovieClip? Object же просто является надклассом MC? Почему _root позволяет однажды только использовать этот метод? Пару слов плз, я пойму :).

silin 14.07.2004 20:23

Почему _root позволяет однажды только использовать этот метод?
потому что твой метод создает тф с одним и тем же именем
вот так посмотри (или модифицируй имя от глубины,как fiot
показал
MovieClip.prototype.MyTxtField=function (tfName,depth_Txt, xx, y, width_Txt, h_Txt, colorTxt) {
this.createTextField(tfName, depth_Txt, xx, y, width_Txt, h_Txt);
with(this[tfName]){
html = true;
multiline=true
wordWrap = true;
scroll = true;
text = "...момент...загружаем информацию...";
}
};
this.MyTxtField("t1",12,11,22,200,200)//первое поле
this.MyTxtField("t2",20,20,39,300,300)


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

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