PDA

Просмотр полной версии : Как задать команду несуществуемумо клипу?


2K WebStudio
13.08.2003, 19:56
Как задать команду несуществуемумо клипу?
Хорошо звучит, да?
Дело в том, что я создаю мувиклип, в нём создаю текстовое поле, а потом пытаюсь дать команду этому мувиклипу с помощью onClipEvent(допустим_load)!
Так вот он говорит, что после точки в строке:
_root.//вот эта каверзная точка//b//название клипа//.onClipEvent...
не хватает названия клипа!
Вы, наверно подумали, что я полный придурок, и забыл назвать мувик?
А вот нет!
Я это всё создал в эктионе с помошью двух строк, наверное, вам известных!

А изначально я поставил себе цель сделать вот что:
мне нужно было создать текстовое поле, загрузить в него текст, а при нажатии на этот текст произвести некоторое действие!
Если сможете, посоветуйте что-нибудь лучше, или решите праблему, которая встала передо мной!
Спасибо!

NeZnayKa
13.08.2003, 20:37
this.onLoad = function() {

}
так пойдет ?

2K WebStudio
13.08.2003, 23:50
Нет, это первое, что я попробовал, но у меня ничего не вышло!
Он вообще у меня много непонятных ошибок выводит//т.е. в таких местох, которых я ошибок не вижу!
Мне как-то даже посоветовали переставить Flash...

DUDE
14.08.2003, 01:34
Может это то что ты ищешь?
поищи: asfunction

2K WebStudio
14.08.2003, 01:41
Нужно, что бы было чему назначить, и на какое событие назначить!
Но я уже решил праблему, просто Flash переустановил!
Ты мне лучше скажи, как мне прописать путь через _root, с постоянно изменяющейся переменной(из цикла)?

Maksoff
14.08.2003, 03:12
name="xxx" add i
_root[name]

и будет у тя
_root.xxx0
_root.xxx1
...
Все екстремально просто, есть в хелпе, примерах, и т. д.

2K WebStudio
14.08.2003, 22:55
Я уже поняд, что вот эта вот хренатень[] всё сама делает!
А можете мне подсказать, как мне после всего этого прописать действия для каждой, получившейся кнопки?

NeZnayKa
15.08.2003, 14:51
_root[name]._y = i*10 ;

2K WebStudio
15.08.2003, 17:10
Это всё хорошо, но праблема в том,что для каждой из этих кнопок значение i будет одинаково!
Тобишь конечное из цикла, а мне надо разные, соответствующие номеру i при загрузке этого мувика!
Ясно, что это можно переделать во много строк, но как бы это в цикле?
Фактически, надо превратить в текст значение переменной i в определённый момент выполнения цикла!
А как?
Возможно eval();?

sergwizard
16.08.2003, 02:37
Если я правильно понял, то можно так.

2K WebStudio
18.08.2003, 02:13
Вроде то, но мне надо чотбы первые 15 строк были внутри одного цикла! Это единственная праблема!

sergwizard
18.08.2003, 02:24
Какие 15 строк? Ты хочешь 15 текстовых полей? Тогда что тебе мешает написать так:
for(i=0;i<15;i++){
.....
}
Или ты хочешь чтобы тебе все разжевали или сделали всю работу за тебя?

2K WebStudio
18.08.2003, 18:01
Мне надо убрать создание всех пятисот функций, которые у меня должну быть - по твоему исходику в один цикл!

flashpointer
18.08.2003, 18:16
Советую положить исходник, а то вы друг друга не очень по моему понимаете :) а решать проблему которую не понял очень проблематично. Исходник решил бы все проблемы сразу и быстро.

2K WebStudio
18.08.2003, 18:28
Вот исходник! :mad:

Nox Noctis
18.08.2003, 19:02
myXML = new XML();
myXML.onLoad = function(success) {
System.useCodepage = true;
myXML.ignoreWhite = true;
aa = 0;
for (var i = 1; i<=myXML.firstChild.childNodes[1].childNodes[1].childNodes[1].attributes.itslength*2; i += 2) {
var mc = _root.index.music.createEmptyMovieClip("m"+i, i);
mc._y += aa;
mc.createTextField("txt", 1, 0, 0, 170, 16);
mc.info = myXML.firstChild.childNodes[1].childNodes[1].childNodes[1].childNodes[i];
mc.txt.text = mc.info.attributes.np;
mc.onPress = function() {
_root.a = this.info.nodeName;
};
aa += 20;
}
_root.a = myXML.firstChild.childNodes[1].childNodes[1].childNodes[1].childNodes[(11-1)/2].nodeName;
_root.index.music.m3.txt.text = "Karen";
};
myXML.load("music.xml");так ? :)

2K WebStudio
18.08.2003, 19:18
Спасибо!
Вроде всё работает, я попробую всё доделать, если будут праблемы, обращусь!

sergwizard
19.08.2003, 08:22
Так, я вижу, что здесь уже Nox был. А где Noctis побывал - там добавлять уже нечего. Но, все равно, - вот мой вариант.
В сделал для мп-шек именами: "name1.mp3,""name2.mp3", "name3.mp3" и т.д.
Тогда все будет загружаться и играть. Можно еще сделать так, чтобы весь альбом загружался сразу, или в фоновом режиме.