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

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

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

Регистрация: Jan 2014
Сообщений: 57
По умолчанию отцентрировать текст в TextField

есть TextField, нужно чтобы ориентация текста была по центру.
пробовал так:
Код AS3:
var _TextField: TextField = new TextField();
 
public function Main()
{
_TextField.defaultTextFormat.align = TextFormatAlign.CENTER;
}
не реагирует

пробовал и

Код AS3:
var _TextField: TextField = new TextField();
var _customTextFormat: TextFormat = new TextFormat();
 
public function Main()
{
_customTextFormat.align = 'CENTER';
_TextField.TextFormat = _customTextFormat;
}
все равно не работает. Все компилируется, но и не думает выравниваться по центру.

Добавлено через 2 минуты
поправочка - в последнем участке кода не _TextField.TextFormat а _TextField.defaultTextFormat, ошибся пока печатал сюда.
ну проблема все та же )

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Компилируется? О___о
Может, стоит включить сообщения об ошибках компиляции?

Кроме того, Вы не показали, где назначается текст.
__________________
Reality.getBounds(this);

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

Регистрация: Dec 2013
Сообщений: 19
Код AS3:
var format:TextFormat = new TextFormat();
format.align = "center";
 
var _textField:TextField = new TextField();
_textField.text = "TEXT";
_textField.width = 200;
addChild(_textField);
 
 
public function Main():void
{
	_textField.setTextFormat(format);
}

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

Регистрация: Jan 2014
Сообщений: 57
BAXTER - так тоже не получается. Все опять компилируется, но текст не выравнивается по центру.

Wolsh - что именно не должно компилироваться из выложенного? Если смущает отсутствие каких-то операторов вроде addChild то я просто опустил их, там еще много чего в функции написано, не все же сюда копировать. )

По сути сейчас все находится в том же состоянии, что и у BAXTER-а.

Добавлено через 52 секунды
свойства multiline и wordWrap у _textField установлены в true

Добавлено через 4 минуты
Так, в отдельном проекте все получилось. Пошел искать свой косяк, всем спасибо. )

Старый 31.01.2014, 03:50
Koopa вне форума Посмотреть профиль Найти все сообщения от Koopa
  № 5  
Ответить с цитированием
Koopa
Banned
[+1 30.08.14]
[+1 26.02.14]

Регистрация: Apr 2012
Сообщений: 162
как правильно заметил Wolsh, текст то есть? или вы пустую строку выравниваете? она выравнена

Старый 31.01.2014, 04:04
BAXTER вне форума Посмотреть профиль Отправить личное сообщение для BAXTER Найти все сообщения от BAXTER
  № 6  
Ответить с цитированием
BAXTER
 
Аватар для BAXTER

Регистрация: Dec 2013
Сообщений: 19
PrincessRoma - если ты хочешь выровнять текст в текстовом поле, то все работает, проверил лично.
Функцию Main() вызвал?

Уточни что ты хочешь выровнять и относительно чего.

Старый 31.01.2014, 04:31
PrincessRoma вне форума Посмотреть профиль Отправить личное сообщение для PrincessRoma Найти все сообщения от PrincessRoma
  № 7  
Ответить с цитированием
PrincessRoma

Регистрация: Jan 2014
Сообщений: 57
Я же уже отписал, что все работает. )) Благодарен, что потрудились и проверили лично.
Проблема оказалась не в _TextField, а в том, что я ему присваивают потом _TextField2.text, а у него текстформат не тот, который мне нужен.
Я думал, что просто string присваиваю, как-то просто на автопилоте. )
Все решилось.

Старый 31.01.2014, 10:09
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 8  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Цитата:
_customTextFormat.align = 'CENTER';
Цитата:
ну проблема все та же )
Хелп:
Цитата:
CENTER Константа
public static const CENTER:String = "center"
Константа, которая задает выравнивание текста по центру в текстовом поле. Используйте синтаксис TextFormatAlign.CENTER.
Всякий раз, когда обсуждаете текстформаты, показывайте свой код как есть. Вы показали 2 избранных строчки и в обоих ошибки. И мы должны поверить, что в остальных всё идеально?
А для текстформата еще жизненно важно, присвоили его ДО или ПОСЛЕ текста и каким из двух методов. Сеттер .defaultTextFormat = ... назначает формат только для будущего текста и никак не влияет на текст, уже находящийся в текстфилде. Метод setTextFormat() устанавливает формат только для текста, который уже показывается, но никак не влияет на будущий текст. По-вашему, в контексте вашего вопроса "присваиваю текстформат, а ничего не происходит" — не этот ли момент самый важный для отвечающего? В какой последовательности присваивается текст и формат.
__________________
Reality.getBounds(this);


Последний раз редактировалось Wolsh; 31.01.2014 в 10:20.
Старый 07.05.2016, 20:36
Azrael вне форума Посмотреть профиль Отправить личное сообщение для Azrael Найти все сообщения от Azrael
  № 9  
Ответить с цитированием
Azrael
 
Аватар для Azrael

Регистрация: Sep 2015
Сообщений: 69
Почему не получается выравнять текст? Вроде бы Wolsh все прояснил, но текст по прежнему по левому краю.
Код AS1/AS2:
public class Main extends Sprite
	{
		var myFormat:TextFormat = new TextFormat();	
		var AboutText = new TextField();
 
		public function Main():void
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
 
				var btn_play:MyButtonClass = new MyButtonClass();
				btn_play.name = "btn_PLAY";
				btn_play.label = "Play";
				btn_play.addEventListener(MouseEvent.CLICK, btnMouseHandle);
				addChild(btn_play).y = 50;
				btn_play.x = 80
                                ... тут создается еще несколько кнопок
 
 
 
				//myFormat.align = "center";        Пробовал сначала так, пока не прочел пост Wolsh.
				myFormat.font = "Times New Roman";
				myFormat.size = 20;
				myFormat.color = 0x000000;				
 
				AboutText.width = 550;
				AboutText.height = 250;
				AboutText.x = 225;
				AboutText.y = 50;
				AboutText.selectable = false;
				AboutText.setTextFormat(myFormat);
				addChild(AboutText);
 
				function btnMouseHandle(e:MouseEvent):void
				{					
				switch(e.target.name){
						case "btn_PLAY":
							trace("btn_01 click");
							break;
						case "btn_OPTIONS":
							trace("btn_02 click");
							break;
						case "btn_INSTRUCTIONS":
							trace("btn_03 click");
							ShowTextBlock (e.target.name);
							break;
						case "btn_ABOUT":
							trace("btn_04 click");
							ShowTextBlock (e.target.name);
							break;
						case "btn_EXIT":
							trace("btn_05 click");
							fscommand('quit');
							break;
					}
				}
 
				function ShowTextBlock (strID:String):void
				{		
							AboutText.defaultTextFormat.align = TextFormatAlign.CENTER;
							AboutText.text = "Текст который никак не выравнивается/nпо центру";
				}			
		}
 
	}
Проблема в переводе строки что ли?

Старый 07.05.2016, 21:09
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 10  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Код AS3:
AboutText.embedFonts = true;
__________________
Ко мне можно и нужно обращаться на ты)

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

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

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


 


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


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