Просмотр полной версии : Label - как узнать актуальную ширину элемента
Вопрос следующего харакрета,
есть элемент Label у него выставляю autoSize = left;
В результате когда в него текст не влазить, то он меняет ширину, и вроде все какбы нормально.
Но вот как теперь узнать его ширину, если писать через _width - то показывает первоначальную ширину а не актуальную.
Поставь два трейса с _width. Если второй правильный, то это косяк TextField.
да, полный касяк, плохо...
Второй _width возвращает верное значение?
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);
Ширина не меняется. т.е. баг.
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);
Да, дела... Ну уж такого я не встречал еще ни в одном языке....
Спасибо.
На самом деле достаточно сделать так
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
Вообще инетересный подход, почему бы сразу не выставлять параметры нужным образом, а редровить уже можно как там системе удобнее.
Хотя думаю это просто можно в исходниках переписать.
Вообще по исходникам сложилось такое впечатление что на быструю руку лепили их, т.е. по комментариям, по этим вещам. Просто когда я брал исходники из того же дельфи, ну там просто идеальный код.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.