![]() |
|
||||||||||
|
|||||
|
Регистрация: Aug 2001
Адрес: Москва
Сообщений: 275
|
Надо на ActionScripte такое написать:
butts="1,All About Flash,,;1_1,Flash,,;1_2,Macromedia,,;1_3,Design,,;1_4,My Site Link,http://mysite.com;2,All About Perl,,;3,All About CGI,,;" ConvertAndCreate(butts); function ConvertAndCreate (strData) { arrData = strData.split(";"); // Разделим на куски в которых лежат толи кнопки толи субменюхи arrData.reverse(); for (i in arrData){ ItemData = arrData[i].split(","); trace ("=> "+ItemData[0]+" => "+ItemData[1]+" => "+ItemData[2]); Number = ItemData[0].split("_"); // Если есть линк - то это кнопка линковая если нету, то субменюха if (ItemData[2] != ""){ trace("Link" ); } else{ trace("Submenu" ); } } } Как видно, из верхней сроки, идея в том, что имена кнопок и субменюх первого эшелона 1 link 2 link 3 SUBMENU 4 5 Второго эшелона X_1,X_2,X_3, тоесть допустим 3-SUBMENU тогда внутри 3_1 link 3_2 SUBMENU 3_3 link Если третий взять то 3_2_1 3_2_2 и т.д Теперь хочется сделать массив Buttons так чтобы Buttons[1][0] = "http://...." //Link 1 Buttons[2][0] = "http://...." //Link 2 Buttons[3][0] = Ссылка намассив где все точно так-же. //Submenu Buttons[1][1] = "mc1" //Имя мувика Buttons[2][1] = "mc2" Buttons[3][1] = "mc3" Buttons[1][2] = _x Buttons[2][2] = _x Buttons[3][2] = _x Ну и так далее Идея ясна я думаю. Я в Актион скрипте не силен. Только пытаюсь его на понт взять. Может кто наставит на путь истинный. Или здесь вообще надо подругому делать Спасибо! |
|
|||||
|
виртуальное земноводное
|
В общем довольно верно мыслишь
Должно работать.Иногда и на понт получается ![]()
__________________
Дешевый критикан |
|
|||||
|
Регистрация: Aug 2001
Адрес: Москва
Сообщений: 275
|
Как массив в массив положить ?
Тоесть есть массив К[][], как его сделать доступным из Т[i][t] ? Есть способ ? |
|
|||||
|
виртуальное земноводное
|
Способ есть, его не может не быть
a=new Array(); a[0]=new Array(); a[0][0]=new Array(); a[0][0][0]="Yeeaaah! 3d array"; Правда для увеличения массива каждый раз нуна будет писать: a[1]=new Array(); a[2]=new Array();
__________________
Дешевый критикан |
|
|||||
|
Регистрация: Aug 2001
Адрес: Москва
Сообщений: 275
|
А что-то вроде указателей есть тут ?
Я вот извратился, написал через eval, но не работает. Указателей хочу! butts="1,All About Flash,,;1_1,Flash,,;1_2,Macromedia,,;1_3,Design,,;1_4,My Site Link,http://mysite.com;2,All About Perl,,;3,All About CGI,,;" ConvertAndCreate(butts); function ConvertAndCreate (strData) { Buttons=new Array(); z = 0; arrData = strData.split(";"); arrData.reverse(); for (i in arrData){ ItemData = arrData[i].split(","); trace ("=> "+ItemData[0]+" => "+ItemData[1]+" => "+ItemData[2]); Number = ItemData[0].split("_"); mas=""; for (n in Number){ mas=mas+"["+Number[n]+"]"; } trace("MAS="+mas); if (ItemData[2] != ""){ trace("Link" ); eval("Buttons"+mas)=new Array(); eval("Buttons"+mas+[0])="Link"; } else{ trace("Submenu" ); eval("Buttons"+mas)=new Array(); eval("Buttons"+mas+[0])="Submenu"; } } trace("===========Res=============="); trace(Buttons.length); // <-- А размер равен нулю..... Пачаму for (i=1; i<Buttons.length;i++){ trace ("["+i+"] "+Buttons[i][0]); } } Последний раз редактировалось AlexSm; 06.12.2001 в 15:18. |
|
|||||
|
виртуальное земноводное
|
Указатель есь
![]() a=new Array(1,2,3); r={}; r=a; trace(r[0]); trace(r[1]); trace(r[2]); r[0]="Yeaaah! It's pointer! YO!"; trace(r);
__________________
Дешевый критикан Последний раз редактировалось gOloVasTicK '~; 06.12.2001 в 15:23. |
|
|||||
|
Регистрация: Aug 2001
Адрес: Москва
Сообщений: 275
|
a=new Array();
t=new Array(); c={}; // Это что, будет означать, что c - ссылка ? c=t; a[0] =c; // в данном случае, a[0] - ссылка на массив t ? // теперь хочу заполнить массив, лежащий в a[0] p={}; p=a[0]; p[0]="tralalalalala"; //======================= Хочу прочитать r={}; r=a[0]; trace(r[0]); Вроде работает. Но ссылки ли это ? А ссылку на ссылку можно делать ? Я пытаюсь в функцию ссылку передать и ек. и как понимать r={} |
|
|||||
|
виртуальное земноводное
|
variables = {}; == variables = new Object();
Так просто писать короче ![]() Можно вообще без объявления обойтись, но эт не правильно ![]()
__________________
Дешевый критикан |
|
|||||
|
Регистрация: Aug 2001
Адрес: Москва
Сообщений: 275
|
Eval () ???
Вопрос такой. Есть у меня мувик MC хочу сделать такую весч: myCommand="_root.MC._x=100"; eval(myCommand); Пачаму НЕ_Работает ? Как надо, чтобы заработалО ? Спасибо! |
|
|||||
|
виртуальное земноводное
|
У меня пашет в таком виде:
my = "_root.x"; eval(my)=100;
__________________
Дешевый критикан |
![]() |
Часовой пояс GMT +4, время: 06:50. |
|
|
« Предыдущая тема | Следующая тема » |
|
|