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

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

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

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
По умолчанию setNewTextFormat, htmlText и непонятка

Есть некое текстовое поле, с зашитыми шрифтами. Есть другое поле, к которому применяю форматирование и сажаю текст.
Если поле создавать, все нормально. Но если поле уже есть на сцене, наблюдается косяк - такое ощущение что setNewTextFormat напрочь игнорируется. Это так и должно быть?
Код:
// дергаю формат
fmt = tf1.getTextFormat(); 
// не работает
tf2.setNewTextFormat( fmt );
tf2.html = true;
tf2.htmlText = '<test>TEST</test>';
// работает, но это не то что нужно
tf3.html = true;
tf3.htmlText = '<test>TEST</test>';
tf3.setTextFormat( fmt );
// работает, но это вообще несерьезно
tf4.setNewTextFormat( fmt );
tf4.html = true;
tf4.htmlText = '<font face="' + fmt.font + '"><test>TEST</test></font>';
// тут все нормально
created_txt = createTextField('created_txt',10, 10, 200, 100, 100);
created_txt.setNewTextFormat( fmt );
created_txt.html = true;
created_txt.htmlText = '<test>TEST</test>';
а, да, забыл сказать - попробовал
Код:
swapDepths.call( tf2, 11 );
..не помогло.
Вложения
Тип файла: rar textformat.rar (8.8 Кб, 69 просмотров)


Последний раз редактировалось Kikasso; 22.09.2007 в 18:31.
Старый 22.09.2007, 19:26
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ну вообще говоря работа текстовых полей, созданных вручную отличается от программно созданных.
И как бы странно использовать TextFormat вкупе с html-форматированием. Мне вообще удивительно, что программно созданное поле юзает текстформат.

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

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Хотелось, чтобы текст вне тэгов нормально отображался, поэтому без css. Попозже прикручу.
И я не знаю заранее, html это поле будет или нет.
Зашивать фонт в поле не выход, он из другого файла. Насчет удивительно - я бы сказал замечательно.

Старый 22.09.2007, 21:19
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 4  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Протестировал следующим образом:
Код:
my_fmt = new TextFormat();
my_fmt.size = 10;
my_fmt.font = "Courier";
//
created_txt = createTextField('created_txt', 10, 10, 200, 200, 200);
trace("\n ------ Начальный формат")
traceFmt(created_txt);
traceFmt(tf)
//
created_txt.setNewTextFormat(my_fmt);
tf.setNewTextFormat(my_fmt)
trace("\n ------ после setNewTextFormat")
traceFmt(created_txt);
traceFmt(tf);
//
created_txt.html = true;
created_txt.htmlText = 'a';
tf.html = true;
tf.htmlText = 'a';
trace("\n ------ после 'html = true' и htmlText = 'a'")
trace("\nФормат остается прежним")
traceFmt(created_txt);
trace("\nФормат сносится")
traceFmt(tf)
//
function traceFmt(txt) {
	trace("------------------ "+txt);
	var fmt = txt.getNewTextFormat();
	trace("size: "+fmt.size)
	trace("font: "+fmt.font)
}
output:
Код:
------ Начальный формат
------------------ _level0.created_txt
size: 12
font: Times New Roman
------------------ _level0.tf
size: 15
font: Arial

 ------ после setNewTextFormat
------------------ _level0.created_txt
size: 10
font: Courier
------------------ _level0.tf
size: 10
font: Courier

 ------ после 'html = true' и htmlText = 'a'

Формат остается прежним
------------------ _level0.created_txt
size: 10
font: Courier

Формат сносится
------------------ _level0.tf
size: 15
font: Arial

Старый 24.09.2007, 02:39
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 5  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Ага, ну это надо просто помнить. То, что поле создается динамически, еще и лучше - иногда текста нет, и это поле нафиг не нужно.

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

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

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


 


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


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