PDA

Просмотр полной версии : проблема с DataGrid.selectedIndex


fly_fuzz
13.07.2007, 13:55
Помогите пожалуйста, сбился с толку совсем. Работает следующее: trace(evt_obj.target.selectedIndex);но не работает var i = evt_obj.target.selectedIndex;где _global.dgListener = new Object();
dgListener.change = function(evt_obj:Object) {
...
Когда дебужу в цс3 то у меня все локал переменные вообще исчезают после попытки скопить этот индекс.
прикрепляю это к DataGrid объекту... начал вот осваить actionScript после 3 лет джавы... так много проблем у меня... Помогите плз

может я описал плохо?

fly_fuzz
14.07.2007, 03:49
ребята, ну неужели никто совсем не знает?

проблемный код:
_global.style.setStyle ('themeColor', 'haloOrange');
_global.style.setStyle ('fontFamily', 'Verdana');
_global.style.setStyle ('fontSize', 12);
//Set the columns for the datagrid
var dgc1:mx.controls.gridclasses.DataGridColumn = new DataGridColumn ();
dgc1.headerText = 'Novice Dives';
dgc1.columnName = 'name';
dgc1.width = 250;
//*****************************
//****************************
_root.dgMenu.List.sortItemsBy ("name", "asc");
//_root.dgMenu.addColumn ("dives");
_root.dgMenu.setStyle ('hGridLines', true);
_root.dgMenu.setStyle ('hGridLineColor', 0xdddddd);


_global.dgListener = new Object();
dgListener.change = function(evt_obj:Object) {
var list = evt_obj.target;
var data = evt_obj.target.getItemAt(list.selectedIndex);
trace(evt_obj.target.getItemAt(list.selectedIndex));
trace(evt_obj.target.selectedIndex); //works fine
//var j = evt_obj.target.List;
//var i = evt_obj.target.List.selectedIndex;//doesn't work
var i = evt_obj.target.selectedIndex;//doesn't work
if (loadedDives[i] == null)
{

}
else
{
//information for dives
_root.DiveInfo_mc.Dive_Desc.access_txt.text =
loadedDives[i]["dive_access"];
_root.DiveInfo_mc.Dive_Desc.current_txt.text = loadedDives[i]["current"];
_root.DiveInfo_mc.Dive_Desc.depth_txt.text = loadedDives[i]["depth"];
_root.DiveInfo_mc.Dive_Desc.surface_txt.text =
loadedDives[i]["surface_conditions"];
_root.DiveInfo_mc.Dive_Desc.temp_txt.text =
loadedDives[i]["temperature"];
_root.DiveInfo_mc.Dive_Desc.visability_txt.text =
loadedDives[i]["visability"];
_root.DiveInfo_mc.Dive_Desc.Desciption_Title.text =
loadedDives[i]["description"];
_root.DiveInfo_mc.Dive_Desc.extras_title.text = loadedDives[i]["extras"];
_root.DiveInfo_mc.Dive_Desc.divetat_title.text =
loadedDives[i]["divetat"];
}
};

iNils
14.07.2007, 05:22
У нас не любят помогоать тем, кто не соблюдает правила. А вы уже два нарушили:
1. Для оформления своего кода, надо использовать теги . Я в последний раз за вами его редактирую
2. Есть кнопка http://www.flasher.ru/forum/images/russian/style3/buttons/edit.gif, поэтому не надо создавать несколько сообщений подряд, надо исправить последнее в теме.

В целом, у нас не так много любителей использовать стандартные компоненты, я вот вобще их не трогаю, поэтому ответа можно ждать довольно долго.

fly_fuzz
14.07.2007, 09:52
понял. Извеняюсь и буду учиться пользоваться форумом.

может ли это произойти из-за того, что слушателя к данному компонету прикрепляют в скрипте для главного movieClipа?

etc
14.07.2007, 13:32
Вам сделали замечание за то, что вы пишете несколько постов подряд, а теперь вы получаете плюс за флуд.

Я не знаю, чего у вас там в коде не так, если трейс строкой выше работает, то и следующая строка тоже рабочая должна быть. Уж тем более надо выяснить, кто есть evt_obj.target, потом уже смотреть всяческие selectedItem (уж не знаю, зачем извращаться getItemAt(selectedIndex), когда есть selectedItem?), selectedIndex…