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

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

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

Регистрация: Mar 2007
Адрес: Беларусь, др. Дрычин
Сообщений: 200
Отправить сообщение для OracleN с помощью ICQ
По умолчанию Label - как узнать актуальную ширину элемента

Вопрос следующего харакрета,
есть элемент Label у него выставляю autoSize = left;

В результате когда в него текст не влазить, то он меняет ширину, и вроде все какбы нормально.

Но вот как теперь узнать его ширину, если писать через _width - то показывает первоначальную ширину а не актуальную.

Старый 12.04.2007, 19:51
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Поставь два трейса с _width. Если второй правильный, то это косяк TextField.

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

Регистрация: Mar 2007
Адрес: Беларусь, др. Дрычин
Сообщений: 200
Отправить сообщение для OracleN с помощью ICQ
да, полный касяк, плохо...

Старый 12.04.2007, 20:04
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Второй _width возвращает верное значение?

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

Регистрация: Mar 2007
Адрес: Беларусь, др. Дрычин
Сообщений: 200
Отправить сообщение для OracleN с помощью ICQ
Код:
trace(hint_mc.hint_text._width);
hint_mc.hint_text.text = ' a<b>sdf</b>asdfas  asdf asd fasfa sdf a sd f as df as df';

trace(hint_mc.hint_text._width);
Ширина не меняется. т.е. баг.

Старый 12.04.2007, 20:28
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Код:
trace(hint_mc.hint_text._width);
hint_mc.hint_text.text = ' a<b>sdf</b>asdfas  asdf asd fasfa sdf a sd f as df as df';
hint_mc.hint_text.draw ();
trace(hint_mc.hint_text._width);
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Регистрация: Mar 2007
Адрес: Беларусь, др. Дрычин
Сообщений: 200
Отправить сообщение для OracleN с помощью ICQ
Да, дела... Ну уж такого я не встречал еще ни в одном языке....

Спасибо.

Старый 12.04.2007, 20:45
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 8  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
На самом деле достаточно сделать так
Код:
hint_mc.hint_text.draw ();

trace(hint_mc.hint_text._width);

hint_mc.hint_text.text = ' a<b>sdf</b>asdfas  asdf asd fasfa sdf a sd f as df as df';
trace(hint_mc.hint_text._width);

hint_mc.hint_text.text = ' a<b>sdf</b>asdfas  asdf asd fasfa sdf a sd f as df as dfasdfasdfasdf';
trace(hint_mc.hint_text._width);
то есть вызвать в самом начале draw вручную. Тогда получим:
Цитата:
35
311
383
Нужно это потому, что сам draw срабатывает гораздо позже. Вот пример:
Код:
hint_mc.hint_text.draw = function (){
	trace ("draw")
}

trace(hint_mc.hint_text._width);

hint_mc.hint_text.text = ' a<b>sdf</b>asdfas  asdf asd fasfa sdf a sd f as df as df';
trace(hint_mc.hint_text._width);

hint_mc.hint_text.text = ' a<b>sdf</b>asdfas  asdf asd fasfa sdf a sd f as df as dfasdfasdfasdf';
trace(hint_mc.hint_text._width);
На выходе получаем
Цитата:
100
100
100
draw
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Регистрация: Mar 2007
Адрес: Беларусь, др. Дрычин
Сообщений: 200
Отправить сообщение для OracleN с помощью ICQ
Вообще инетересный подход, почему бы сразу не выставлять параметры нужным образом, а редровить уже можно как там системе удобнее.
Хотя думаю это просто можно в исходниках переписать.

Вообще по исходникам сложилось такое впечатление что на быструю руку лепили их, т.е. по комментариям, по этим вещам. Просто когда я брал исходники из того же дельфи, ну там просто идеальный код.

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

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

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


 


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


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