![]() |
|
||||||||||
|
|||||
|
[++1 30.12.12]
[+1 30.12.12] Регистрация: Dec 2012
Адрес: Россия
Сообщений: 57
|
может я конечно и неправильно назвал тему, но всё же! вот код:
import flash.net.URLRequest; import flash.display.Loader; import flash.events.Event; import flash.display.Sprite; var conteiner:Sprite = new Sprite(); var sqlVariables:URLVariables ; var sqlRequest:URLRequest = new URLRequest(); var sqlLoader:URLLoader = new URLLoader(); var dataRequest:URLRequest = new URLRequest(); var dataLoader:Loader = new Loader(); phpInXML(new URLVariables("pass=&sex=man"), "http://.php"); function phpInXML(sqlZapros:URLVariables, phpAdres:String):void{ addChild(conteiner); sqlVariables = sqlZapros; sqlRequest.url = phpAdres; sqlRequest.method = URLRequestMethod.POST; sqlRequest.data = sqlVariables; sqlLoader.dataFormat = URLLoaderDataFormat.VARIABLES; sqlLoader.addEventListener(Event.COMPLETE, completeXML); sqlLoader.load(sqlRequest); } function completeXML(e:Event):void{ sqlLoader.removeEventListener(Event.COMPLETE, completeXML); var respons:XML = new XML(e.target.data.result); var responsList:XMLList = respons.stroka; for each (var strokaXML:XML in responsList) { addElementFunc(strokaXML.nomer, strokaXML.href); } } function dataLoadComplete(e:Event):void{ trace('ok'); var sprite:Sprite = new Sprite(); addChild(sprite); sprite.addChild(dataLoader); } function addElementFunc(numElement:int, hrefElement:String):void{ var numY:int = int(numElement - 1); numY= int(numY / 3 + 1); var numX:int = (numElement - 1); numX = int(numX % 3); var xElement:int = (numX * 80); var yElement:int = (numY * 80); var shapes:Shape = new Shape(); conteiner.addChild(shapes); shapes.graphics.lineStyle(2, 0x33CCCC, 0.6); shapes.graphics.beginFill(0x99FFCC, 0.4); shapes.graphics.drawRoundRect(xElement + 80,yElement,70,70,40); dataLoader.x=xElement; dataLoader.y = yElement; dataRequest.url = hrefElement; dataLoader.addEventListener(Event.COMPLETE, dataLoadComplete); dataLoader.load(dataRequest); } |
|
|||||
|
а addElementFunc вызывается?
__________________
adobe AS3 manual |
|
|||||
|
[++1 30.12.12]
[+1 30.12.12] Регистрация: Dec 2012
Адрес: Россия
Сообщений: 57
|
да! и вырисовывает всё! в xml содержит 7 строк! номера и ссылки! вот квадратики для картинок в функции addElementFunc вызываються а dataLoadComplete нет! проверял трэйсом!
|
|
|||||
|
Значит dataLoader.load(dataRequest); не срабатывает успешно.
Проверьте значение dataRequest.url, и можете помимо Event.COMPLETE слушать так же событие об ошибке:
__________________
adobe AS3 manual |
|
|||||
|
[++1 30.12.12]
[+1 30.12.12] Регистрация: Dec 2012
Адрес: Россия
Сообщений: 57
|
трэёс и в этом случае не пашет!
|
|
|||||
|
У вас один и тот же лоадер в цикле. Не успевая загрузить одно, он уже начинает грузить другое. Так нельзя.
Нужно дожидаться когда он загрузит одно, и потом по событию COMPLETE грузить следующий элемент
__________________
adobe AS3 manual |
|
|||||
|
[++1 30.12.12]
[+1 30.12.12] Регистрация: Dec 2012
Адрес: Россия
Сообщений: 57
|
function completeXML(e:Event):void{ sqlLoader.removeEventListener(Event.COMPLETE, completeXML); var respons:XML = new XML(e.target.data.result); var responsList:XMLList = respons.stroka; for each (var strokaXML:XML in responsList) { addElementFunc(strokaXML.nomer, strokaXML.href); } } ну а хотя да ты прав цикл бегает быстрее чем грузится картинка и сразу же вызывает грузить следующий... но так хотя бы последнюю картинку загрузить должен! или нет? Добавлено через 18 минут помогите решить проблемку... а? ведь понятно же что мне нужно сделать... подскажите а? Добавлено через 28 минут пожалуйста! Добавлено через 2 часа 23 минуты даже в таком случае: import flash.net.URLRequest; import flash.display.Loader; import flash.events.Event; import flash.display.Sprite; var conteiner:Sprite = new Sprite(); var sqlVariables:URLVariables ; var sqlRequest:URLRequest = new URLRequest(); var sqlLoader:URLLoader = new URLLoader(); var dataRequest:URLRequest = new URLRequest(); var dataLoader:Loader = new Loader(); var dataArr:Array = new Array(); var LineDataImage:int; phpInXML(new URLVariables("pass=пар&sex=man"), "http://face_out.php"); function phpInXML(sqlZapros:URLVariables, phpAdres:String):void{ addChild(conteiner); sqlVariables = sqlZapros; sqlRequest.url = phpAdres; sqlRequest.method = URLRequestMethod.POST; sqlRequest.data = sqlVariables; sqlLoader.dataFormat = URLLoaderDataFormat.VARIABLES; sqlLoader.addEventListener(Event.COMPLETE, completeXML); sqlLoader.load(sqlRequest); } function completeXML(e:Event):void{ sqlLoader.removeEventListener(Event.COMPLETE, completeXML); var respons:XML = new XML(e.target.data.result); var responsList:XMLList = respons.stroka; for each (var strokaXML:XML in responsList) { addElementFunc(strokaXML.nomer, strokaXML.href); } LineDataImage=0; loadImageData(LineDataImage); } function loadImageData(numLine:int):void{ if(numLine>dataArr.length){ }else{ dataRequest.url = dataArr[numLine].src; dataLoader.addEventListener(Event.COMPLETE, dataImageComplete); dataLoader.load(dataRequest); trace(dataArr[numLine].src); } } function dataImageComplete(e:Event):void{ trace("sad"); dataLoader.x = dataArr[LineDataImage].xImage; dataLoader.y = dataArr[LineDataImage].yImage; conteiner.addChild(dataLoader); LineDataImage ++; loadImageData(LineDataImage); } function dataLoadComplete(e:Event):void{ trace('ok'); var sprite:Sprite = new Sprite(); addChild(sprite); sprite.addChild(dataLoader); } function addElementFunc(numElement:int, hrefElement:String):void{ var numY:int = int(numElement - 1); numY= int(numY / 3 + 1); var numX:int = (numElement - 1); numX = int(numX % 3); var xElement:int = (numX * 80); var yElement:int = (numY * 80); var shapes:Shape = new Shape(); conteiner.addChild(shapes); shapes.graphics.lineStyle(2, 0x33CCCC, 0.6); shapes.graphics.beginFill(0x99FFCC, 0.4); shapes.graphics.drawRoundRect(xElement + 80,yElement,70,70,40); dataArr.push({xImage:xElement, yImage:yElement, src : hrefElement}); } трэйсер выводит ссылку а слушатель на dataLoader не пашет.... в этот то раз почему?
__________________
Я слышу и забываю.Я вижу и запоминаю.Я делаю и понимаю. |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:54. |
|
|
« Предыдущая тема | Следующая тема » |
|
|