Форум 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)
-   -   непослушный createTextField (http://www.flasher.ru/forum/showthread.php?t=69593)

ftx 25.09.2005 22:01

непослушный createTextField
 
Привет!

Второй день бьюсь никак не могу побороть этот createTextField.

Надо програмно создать TextField. Вот пример из справки:

this.createTextField("my_txt", this.getNextHighestDepth(), 0,10, 300, 100);
my_txt.border = true;
my_txt.multiline = true;
my_txt.wordWrap = true;
var my_fmt:TextFormat = new TextFormat();
my_fmt.color = 0x00FF00;
my_fmt.underline = true;
my_txt.text = "This is my first test field object text.";
my_txt.setTextFormat(my_fmt);

работает, НО если я пытаюсь создать TF на новом МС текст не виден, хотя курсор мыши над невидимым TF меняется на "текстовый":

this.createEmptyMovieClip("my_mc", 0);
my_mc.createTextField("my_txt", my_mc.getNextHighestDepth(), 0,10, 300, 100);
my_txt.border = true;
my_txt.multiline = true;
my_txt.wordWrap = true;
var my_fmt:TextFormat = new TextFormat();
my_fmt.color = 0x00FF00;
my_fmt.underline = true;
my_txt.text = "This is my first test field object text.";
my_txt.setTextFormat(my_fmt);


Где ошибка?

7thsky™ 25.09.2005 23:18

Цитата:

this.createEmptyMovieClip("my_mc", 0);
my_mc.createTextField("my_txt", my_mc.getNextHighestDepth(), 0,10, 300, 100);
my_txt.border = true;
my_txt.multiline = true;
my_txt.wordWrap = true;
var my_fmt:TextFormat = new TextFormat();
my_fmt.color = 0x00FF00;
my_fmt.underline = true;
my_txt.text = "This is my first test field object text.";
my_txt.setTextFormat(my_fmt);
а откуда ты взял my_txt?

Captain Crocus 25.09.2005 23:29

this.createEmptyMovieClip("my_mc", 0);
my_mc.createTextField("my_txt", my_mc.getNextHighestDepth(), 0,10, 300, 100);
my_mc.my_txt.border = true;
my_mc.my_txt.multiline = true;
my_mc.my_txt.wordWrap = true;
var my_fmt:TextFormat = new TextFormat();
my_fmt.color = 0x00FF00;
my_fmt.underline = true;
my_mc.my_txt.text = "This is my first test field object text.";
my_mc.my_txt.setTextFormat(my_fmt);

wonderwhy 26.09.2005 00:21

Я тоже сталкивался с этой проблемой. Я наткнулся вот на что. У меня был MC TextMC в библиотеке. В нём был dynamic Text с текстом по умолчанию "Тест". При создании MC

_root.attachMovie("TextMC","TextMC"+i,i);

текста по умолчанию я не увидел. Поставил на static, а не dynamic и текст появился.
Потом пробовал с помощью команды createTextField. Тоже самое.
Попробовал создать в _root.createTextField. И там всё в порядке. Я не знаю в чем проблема. Может баг какой. Я позже проверял. Такое ощущение, что в создаваемых или дублирующихся MC динамические текстовые поляне создаются. Может, кто ни будь, знает в чем дело.
Я могу скинуть в нет FLA фаил этих моих экспериментов. Если кто то знает как сделать что бы раблталоскинте плиз код или хотя быобясните что происходит и как это исправить

sergwizard 26.09.2005 03:41

2 wonderwhy Тебе же Captain Crocus показал, что происходит и как делать. И, если все делаешь правильно, то и бороться не надо,

ftx 26.09.2005 11:38

Цитата:

Сообщение от Captain Crocus
my_mc.my_txt.border = true;

Captain Crocus, во голова!
Я так изнал, что какая-то ерунда.

Спасибо!

Captain Crocus 26.09.2005 11:59

2ftx

Ты бы 7thsky™ поблагодарил...

ftx 26.09.2005 14:42

Вначале я его не понял, подумал не то не врубается не то издевается :)

iNils 26.09.2005 15:05

Ты что Captain Crocus весьма корректный человек. Пишет редко, но метко.

wonderwhy 26.09.2005 20:07

У меня всё равно не получается :(
 
Хмм. Для меня не сработало. У меня есть клип News. В нём код

n=15;
for(i=0;i<n;i++){
this.ScrollableArea.attachMovie("massage","massage"+i,i);
this.ScrollableArea["massage"+i]._x=0;
this.ScrollableArea["massage"+i]._y=i*80+40;
this.ScrollableArea["massage"+i].i=i;
}

Типо есть 15 новостей. создаётся 15 мовиков massage
Код:
this.createTextField("NewsText",my_mc.getNextHighestDepth(),20,20,100,100);
this.NewsText.border = true;
this.NewsText.multiline = true;
this.NewsText.wordWrap = true;
var my_fmt:TextFormat = new TextFormat();
my_fmt.color = 0x00FF00;
my_fmt.underline = true;
this.NewsText.text = "This is "+this.i+" news";
this.NewsText.setTextFormat(my_fmt);

И так создаётся 15 квадратиков серых. Типо новости. Да вот не задача текста то не видно.
При надобности могу в нет fla скинуть но хоть убейте не пойму что не так :(


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

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