Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.02.2010, 04:12
alexorg2 вне форума Посмотреть профиль Отправить личное сообщение для alexorg2 Найти все сообщения от alexorg2
  № 1  
Ответить с цитированием
alexorg2

Регистрация: Feb 2010
Сообщений: 6
По умолчанию Вывод одинаковых элементов

Я не нашел на форуме раздела для новоиспеченных новичков, поэтому пишу сюда

Боюсь что мой вопрос многих гуру ActionScript повергнет в дикий хохот, но... хочу спросить как вывести два ОДИНАКОВЫХ текстовых поля на экран, но которые отличаются только положением?

Сейчас я делаю это примерно так:
Код AS3:
var textList1:TextField = new TextField();
textList1.text = "некий текст";
textList1.autoSize = TextFieldAutoSize.LEFT;
textList1.y = 20;
mainStartBlock.addChild(textList1);
 
 
var textList2:TextField = new TextField();
textList2.text = "некий текст";
textList2.autoSize = TextFieldAutoSize.LEFT;
textList2.y = 40;
mainStartBlock.addChild(textList2);
т.е. создаю два объекта TextField, проделываю кучу одинаковых операций с единой разницей в координате y.
Я боюсь себе даже представить насколько увеличится код, если вдруг мне понадобится вывести аж 50 таких элементов в разных координатах.

Старый 23.02.2010, 04:46
Gaen вне форума Посмотреть профиль Отправить личное сообщение для Gaen Найти все сообщения от Gaen
  № 2  
Ответить с цитированием
Gaen
strange mood
 
Аватар для Gaen

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
Вы все правильно делаете.
Если захотите сделать 50 таких полей - цикл в помощь

Код AS3:
var txt:TextField
 
for(var i:int = 0; i < 50; i++){
  txt = new TextField();
  txt.text = "некий текст";  //txt.text = texts[i]
  txt.autoSize = TextFieldAutoSize.LEFT;
  txt.y = i * 20;  //txt.y = coords[i]
  mainStartBlock.addChild(txt);
}//for
__________________
тонкий тролль, осеянный благодатью

Старый 23.02.2010, 05:51
kackbip вне форума Посмотреть профиль Отправить личное сообщение для kackbip Найти все сообщения от kackbip
  № 3  
Ответить с цитированием
kackbip
 
Аватар для kackbip

Регистрация: Sep 2007
Адрес: Tomsk
Сообщений: 943
Отправить сообщение для kackbip с помощью ICQ Отправить сообщение для kackbip с помощью Skype™
Ну или написать функцию
Код AS3:
function putField(text:String, x:Number, y:Number, container:DisplayObjectContainer):void{
  var txt:TextField = new TextField();
  txt.text = text;
  txt.autoSize = TextFieldAutoSize.LEFT;
  txt.y = y;
  txt.x = x;
  container.addChild(txt);
}

Старый 23.02.2010, 12:03
nOobCrafter вне форума Посмотреть профиль Отправить личное сообщение для nOobCrafter Найти все сообщения от nOobCrafter
  № 4  
Ответить с цитированием
nOobCrafter

Регистрация: Nov 2008
Сообщений: 894
Записей в блоге: 1
Код AS3:
function makeATF(t:String, color:uint = 0xFFFFFF, size:int = 12, auto:String = 'left', select:Boolean = false):TextField
		{
			var FTM:TextFormat = new TextFormat();
				FTM.font = "Arial";// "Trebuchet MS";
				FTM.color = color;
				FTM.size = size;
				FTM.bold = true;
 
			var tf:TextField = new TextField();
				tf.autoSize = auto;
				tf.selectable = select;
				tf.embedFonts = true;
				tf.defaultTextFormat = FTM;
				tf.text = t;
			return tf;
		}
имхо так лучше, только надо экспортнут если чего то хватать небудет.

Создать новую тему Ответ Часовой пояс GMT +4, время: 20:18.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 20:18.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.