![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Sep 2007
Сообщений: 64
|
Вечер добрый всем флешерам!
Собственно код: var treeListener:Object = new Object();
treeListener.change = function(evt:Object) {
var node = menu_tr.selectedItem;
var url = node.attributes.url;
if (evt.target.getIsBranch(node)) {
evt.target.setIsOpen(node, !evt.target.getIsOpen(node), true);
} else {
switch (menu_tr.selectedItem.attributes.data) {
case "0" :
_root.clear();
gotoAndStop("Scene1", 1);
break;
case "1" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 2);
break;
case "21" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 3);
break;
case "22" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 4);
break;
case "31" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 5);
break;
case "32" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 6);
break;
case "33" :
_root.clear();
Main_txt.scroll = true;
getURL("Data/Head/Och.htm","_self");
break;
case "34" :
_root.clear();
Main_txt.scroll = true;
getURL("Data/Head/Zaoch.htm","_self");
break;
case "35" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 9);
break;
case "36" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 10);
break;
case "37" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 11);
break;
case "38" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 12);
break;
case "5" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 13);
break;
case "6" :
_root.clear();
Main_txt.scroll = true;
gotoAndStop("Scene1", 14);
break;
case "7" :
_root.clear();
Main_txt.scroll = true;
trace("Called");
//getURL("Data/Head/AdbeRdr60_enu_full.exe","_blank");
//fscommand("exec","AdbeRdr60_enu_full.exe");
break;
}
}
};
menu_tr.addEventListener("change", treeListener);
Если при запуске, при первом нажатии, она вызывается 1 раз, то в течении всей работы флешки до закрытия, она будет вызываться 1 раз. Если закрыть флешку и запустить ее еще раз, то она может опять работать как надо (1 раз), а может и больше одного раза, и не могу понять почему и как это можно преодолеть. Если бы она вызывалась все время стабильное количество раз, то можно было бы хотя бы провести дебаг, и поглядеть чего и как происходит, а тут вообще хаотично. P.S. приведенный код находится а *.as файле и include'ится в основном коде флешки. Датапровайдер для дерева берется тоже из include'ного *.as. Естественно при вызове gotoAndStop(); это не заметно, но getURL иногда открывает кучу установщиков в случае вызова ехешки установки акробата, как и в случае вызова htm'ной страницы - кучу окон IE. У кого какие есть соображения по этому поводу? Может ли это быть из-за того что в AS'ке датапровайдера во внутренней XML'ке не прописаны свойства isBranch, т.к. по умолчанию для Leaf нодов они =false? |
|
|||||
|
Banned
[+1 08.05.08]
[+4 14.04.08] [+1.3 02.05.08] Регистрация: Oct 2006
Адрес: кагбэ Киеф!!1
Сообщений: 1,473
|
Oh my God! Что это за синтаксис кода?
зачем _root.clear()? не надо вообще использовать Сцены!!! |
|
|||||
|
Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
|
addProperty или watch решает такие вопросы. Или по-простому:
только oldData объявите где-нибудь вне функции. |
|
|||||
|
Регистрация: Sep 2007
Сообщений: 64
|
Kikasso, спасибо за помощь!
|
|
|||||
|
Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
|
А если интересно, что он там евентами кидается, потрейсте этот evt, может там что и меняется.
А, да, присоединяюсь, нафиг сцены, и зачем clear()? Последний раз редактировалось Kikasso; 10.09.2007 в 11:29. |
![]() |
![]() |
Часовой пояс GMT +4, время: 03:03. |
|
|
« Предыдущая тема | Следующая тема » |
|
|