|
|
|||||
Валидация размеров в AsWing
Доброго времени суток всем!
Сейчас руки дошли до AsWing, попытался разобраться, но не вышло Проблема в следующем: - при изменении текста кнопки на более короткий, раскладка автоматически НЕ ужимает кнопку (только когда у контейнера validate() по-дёргаешь - кнопка принимает правильный размер) - если менять размер кнопки - та же песня - кнопка изменяется, а её соседи не пододвигаются, принудительно вызываешь validate() - размеры кнопки возвращаются в свои границы. - и вообще: приходится validate() вручную вызывать даже после простого добавления кнопки. Что я делаю не так? Или AsWing впринципе не может изменять раскладку автоматически? (Флекс это точно умеет, но там всю голову сломаешь, пока разберёшся, как оно работает) package { import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; import flash.events.Event; import flash.events.MouseEvent; import org.aswing.AsWingManager; import org.aswing.JButton; import org.aswing.JPanel; public class AsWingResearch extends Sprite { private var _container:JPanel; public function AsWingResearch() { stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; AsWingManager.setRoot(this); _container = new JPanel(); addChild(_container); var button:JButton = new JButton("Click for change"); button.addEventListener(MouseEvent.CLICK, onChangeWidthClick); _container.append(button); _container.append(new JButton("Text")); _container.append(new JButton("Text")); _container.append(new JButton("Text")); stage.addEventListener(Event.RESIZE, onStageResize); onStageResize(); } private function onStageResize(event:Event = null):void { _container.setSizeWH(stage.stageWidth, stage.stageHeight); _container.validate();// Если эту строчку НЕ написать, почему-то ничего не отображается } private function onChangeWidthClick(event:MouseEvent):void { (event.currentTarget as JButton).setText("Short text"); } } } |
Часовой пояс GMT +4, время: 14:27. |
|
« Предыдущая тема | Следующая тема » |
|
|