![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Sep 2010
Адрес: Москва
Сообщений: 24
|
Здравствуйте.
Хочу использовать объект List для отображения информации пользователю, в приложении интерактивной карты. Столкнулся со следующей проблеммой: импортирую нужные классы на уровне пакета объявляю свойства static var scpdLocContentTree:List; static var scpdLocContentTreeDataProvider:DataProvider; DialogWindows.scpdLocContentTree= new List(); DialogWindows.scpdLocContentTreeDataProvider = new DataProvider (); DialogWindows.scpdLocContentTreeDataProvider.addItem ({labels:'Монстры',contentXML:monsters}); DialogWindows.scpdLocContentTreeDataProvider.addItem ({labels:'Ресурсы',contentXML:resource}); DialogWindows.scpdLocContentTreeDataProvider.addItem ({labels:'Внутренние локации',contentXML:subLoc}); DialogWindows.scpdLocContentTree.dataProvider = scpdLocContentTreeDataProvider; DialogWindows.scpdLocContentTree.labelField = 'labels'; Цитата:
Прочел справку по компоненту List, там в примере он импортируется на уровне класса, убрал импортирование на уровне пакета, добавил на уровне класса, как и ожидалось проблему это не решило. Поскольку на AS это моя первая работа, варианты "почему так происходит" у меня уже кончились, прошу помощи. Вот весь код класса (это черновой набросок). package msl{ import flash.display.Sprite; import flash.text.TextField; import fl.controls.List; import fl.data.DataProvider; public class DialogWindows extends Sprite { const SHOW_COORD_POINT_DETAILS = 'scpd'; const SEARCH = 's'; const SEARCH_RESULT = 'sr'; const EDIT_COORD_POINT = 'ecp'; const ERROR = 'e'; static var body:Sprite; static var winTitle:TextField; static var scpdLocName:TextField; static var scpdXPos:TextField; static var scpdYPos:TextField; static var scpdTurnLEFT:Turn; static var scpdTurnRIGHT:Turn; static var scpdTurnUP:Turn; static var scpdTurnDOWN:Turn; static var scpdTurnLEFTBtn:Sprite; static var scpdTurnRIGHTBtn:Sprite; static var scpdTurnUPBtn:Sprite; static var scpdTurnDOWNBtn:Sprite; static var scpdIsRoad:Boolean; static var scpdLocContentTree:List; static var scpdLocContentTreeDataProvider:DataProvider; public function DialogWindow (type:String, ...variableArray) { switch (type) { case SHOW_COORD_POINT_DETAILS : showCoordPointDetailsWindow (variableArray); break; case SEARCH : searchWindow (variableArray); break; case SEARCH_RESULT : searchResultWindow (variableArray); break; case EDIT_COORD_POINT : editCoordPointWindow (variableArray); break; default : errorWindow (); } } function showCoordPointDetailsWindow (...varArray):Sprite { var monsters:XMLList = new XMLList(Main.mapXML.meridian[varArray[0] + 15].paralell[varArray[1] + 15].monsters); var resource:XMLList = new XMLList(Main.mapXML.meridian[varArray[0] + 15].paralell[varArray[1] + 15].resource); var subLoc:XMLList = new XMLList(Main.mapXML.meridian[varArray[0] + 15].paralell[varArray[1] + 15].subLoc); try { if (varArray.length == 0) { throw new Error('Методу не переданы параметры. Возможно произошла внутренняя ошибка среды Flash player, закройте данное окно и повторите вызов'); } DialogWindows.winTitle = DialogWindows.scpdXPos = DialogWindows.scpdYPos = DialogWindows.scpdLocName = new TextField(); DialogWindows.scpdLocContentTree= new List(); DialogWindows.scpdLocContentTreeDataProvider = new DataProvider (); DialogWindows.scpdTurnLEFT = new Turn(varArray[3]); DialogWindows.scpdTurnRIGHT = new Turn(varArray[4]); DialogWindows.scpdTurnUP = new Turn(varArray[5]); DialogWindows.scpdTurnDOWN = new Turn(varArray[6]); DialogWindows.scpdTurnLEFTBtn = DialogWindows.scpdTurnRIGHTBtn =DialogWindows.scpdTurnUPBtn = DialogWindows.scpdTurnDOWNBtn = DialogWindows.body = new Sprite(); DialogWindows.scpdLocContentTreeDataProvider.addItem ({labels:'Монстры',contentXML:monsters}); DialogWindows.scpdLocContentTreeDataProvider.addItem ({labels:'Ресурсы',contentXML:resource}); DialogWindows.scpdLocContentTreeDataProvider.addItem ({labels:'Внутренние локации',contentXML:subLoc}); DialogWindows.scpdLocContentTree.dataProvider = scpdLocContentTreeDataProvider; DialogWindows.scpdLocContentTree.labelField = 'labels'; } catch (e:Error) { trace ('Произошла ошибка: '+ e.message); } return DialogWindows.body; } function searchWindow (...varArray) { } function searchResultWindow (...varArray) { } function editCoordPointWindow (...varArray) { } function errorWindow (...varArray) { } } } Последний раз редактировалось MetSerp; 16.09.2010 в 18:52. Причина: масло масленое убрал |
|
|||||
|
Регистрация: Dec 2009
Сообщений: 428
|
А Вы положили экземпляр компонента в библиотеку?
__________________
Скажи мне кто твой друг и я скажу тебе кто твой друг |
|
|||||
|
Регистрация: Sep 2010
Адрес: Москва
Сообщений: 24
|
а вот про эту особенность я забыл
Спасибо, именно оно и есть. |
|
|||||
|
Регистрация: Jun 2010
Адрес: somewhere in the universe
Сообщений: 195
|
Особенность О_О ? Не я конечно понимаю, что читать книжки скучно, но хотя базу ? не ? совсем не как ? ((
|
![]() |
![]() |
Часовой пояс GMT +4, время: 03:53. |
|
|
« Предыдущая тема | Следующая тема » |
|
|