Форум 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)
-   -   Не работает слушатель, почему? (http://www.flasher.ru/forum/showthread.php?t=105863)

repz 25.12.2007 17:57

Не работает слушатель, почему?
 
Не могу понять почему не работает слушатель (красным в коде).
А то что синим работает, но если вывести трейс все время обновляется, если просто присвоить переменной типа var i
Код:

var XML_loader:XML = new XML();
var XML_array:Array = new Array();
XML_loader.ignoreWhite = true;
XML_loader.onLoad = function(success) {
        var XML_lang:XMLNode = this.firstChild.firstChild;
        var i:Number = 0;
        for (var XML_chd = XML_lang; XML_chd != null; XML_chd=XML_chd.nextSibling, i++) {
                var j:Number = 0;
                XML_array[i] = new Array();
                XML_array[i][0] = XML_chd.nodeName;
                j++;
                for (var XML_str = XML_chd.firstChild; XML_str != null; XML_str=XML_str.nextSibling, j++) {
                        XML_array[i][j] = XML_str.firstChild.nodeValue;
                }
        }
        for (var k = 0; k<XML_array.length; k++) {
                box.addItem(XML_array[k][1], XML_array[k][2]);
        }
};
boxlistener.change = function (evt_obj:Object) {
var i=box.value;
trace(i);
        }

box.addEventListener("change", boxlistener);

XML_loader.load("XML_file.xml");

_root.onEnterFrame = function() {
        ret.text=box.value;
};

Добавлено:
Забыл var boxlistener:Object = new Object();


Sorry)))

Molecula 25.12.2007 19:37

То что красным выделено - код рабочий.
Попробуйте сделать без подгрузки ХМЛь, простой пример из хелпа:
Код:

// Add Item to List.
my_cb.addItem({data:1, label:"First Item"});
my_cb.addItem({data:2, label:"Second Item"});

// Create Listener Object.
var cbListener:Object = new Object();

// Assign function to Listener Object.
cbListener.change = function(event_obj:Object) {
 trace("Value changed to: "+event_obj.target.selectedItem.label);
};

// Add Listener.
my_cb.addEventListener("change", cbListener);

Если это сработает - надо исходник смотреть.

etc 26.12.2007 02:20

Molecula, вопрос уже решен, топик клозед.


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

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