Показать сообщение отдельно
Старый 28.11.2011, 01:08
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 21  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
для одного класса, только второй из вариантов

Код AS3:
package
{
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.text.TextField;
 
	public class Main extends Sprite
	{
		private var data:XML = 
			<data>
				<category1>
					<iteam1 name="name" data="data"></iteam1>
					<iteam2 name="name" data="data"></iteam2>
				</category1>
				<category2>
					<iteam1 name="name" data="data"></iteam1>
					<iteam2 name="name" data="data"></iteam2>
				</category2>
			</data>;
 
		public function Main():void
		{
 
			var count:int = 0;
			for each (var category:XML in data.*)
			{
				// создаем поля с имененм категорий
				var field:TextField = createField(category.name().toString());
				field.y = 30 * count++;
				field.addEventListener(MouseEvent.CLICK, field_click);
				addChild(field);
 
			}
 
		}
 
		private function field_click(e:MouseEvent):void
		{
			// выдергиваем данные из XMl по имени
			var field:TextField = e.currentTarget as TextField;
			var fieldData:XML = data.child(field.text)[0];
			trace("fieldData : " + fieldData);
 
		}
 
		private function createField(str:String):TextField
		{
			var res:TextField = new TextField();
			res.width = 60;
			res.height = 20;
			res.border = true;
			res.selectable = false;
			res.text = str;
			return res;
		}
 
	}
 
}