Показать сообщение отдельно
Старый 17.05.2008, 20:00
Reflection вне форума Посмотреть профиль Отправить личное сообщение для Reflection Найти все сообщения от Reflection
  № 288  
Reflection
 
Аватар для Reflection

Регистрация: Feb 2008
Адрес: Zhukovsky
Сообщений: 10
Отправить сообщение для Reflection с помощью ICQ
Подскажите, у меня есть XML-файл - piclist.xml :

Код:
<pic>
	<album aname="albm1">
		<img id="1" iname="telka">img1.jpg</img>
		<img id="2" iname="wallpap">img2.jpg</img>
		<img id="2" iname="wallpap">img3.jpeg</img>
	</album>
</pic>
я написал такой код который раскалбашивает XML и загружает прописанные в нем картинки:

Код:
package {

	import flash.display.*;
	import flash.events.*;
	import flash.net.*;
	import flash.utils.*;
	import flash.events.MouseEvent;

	public class gallery extends MovieClip {
		var pic:XML;
		var array:Array=new Array();
		var colimg;
		var clicks:Boolean=false;
		var arMC:Array=new Array();
		public function gallery() {
			var loader:URLLoader=new URLLoader();
			loader.dataFormat=URLLoaderDataFormat.TEXT;
			loader.addEventListener(Event.COMPLETE, hendleComplete);
			loader.load(new URLRequest("piclist.xml"));
		}
		public function hendleComplete(event:Event) {
			try {
				pic=new XML(event.target.data);
			} catch (e:TypeError) {
				trace("не получилось преобразовать текст в XML");
				trace(e.message);
			}
			colimg=pic.album.img.length();
			for (var j:int=0; j<colimg; j++) {
				array.push(pic.album.img[j]);
			}
			for (var i:int=0; i<array.length; i++) {
				var img=array[i];
				var _loaderpic:Loader=new Loader();
				var mc:MovieClip=new MovieClip();
				_loaderpic.name="_loaderpic"+i;
				mc.name="mc"+i;
				_loaderpic.load(new URLRequest(img));
				addChild(mc);
				mc.addChild(_loaderpic);
				//mc.x=mc.width*i+100;
				mc.scaleX=0.2;
				mc.scaleY=0.2;
				trace(i);
				trace(img);
				arMC.push(mc);
				mc.addEventListener(MouseEvent.CLICK,hclick);
			}
			//trace(numChildren);
			
		}
		public function hclick(event:Event):void {
			if (clicks) {
				event.target.scaleX=1;
				event.target.scaleY=1;
				event.target.x=0;

				clicks=false;
			} else {
				event.target.scaleX=4;
				event.target.scaleY=4;
				event.target.x=stage.width/2;
				clicks=true;
			}
		}
	}
}
Скорей всего корявый т.к. руки не заточил и не выпрямил еще =))
Я хоче чтобы у меня каждая картинка грузилась в отдельный MovieClip и я в цикле прописал
Код:
mc.name="mc"+i;
картинки добавляются но что-то я не пойму под какими именами они для того чтобы обратится к ним позже, если я пишу вместо trace(numChildren); trace(mc); то он показывает [object MovieClip] если trace(mc1); /mc2,mc0 и т.д./ - 1120: Access of undefined property mc1.

и еще хочу чтобы картинки были на определенном расстоянии и пишу
Код:
mc.x=mc.width*i+100;
но они сдвигаются все вместе и всеравно друг на друге. где мои косяки?если не трудно прошу поправить с пояснением.