2009-04-16 2 views
2

У меня есть пользовательский HBox, как так ....Flex - Вертикально положение детей горизонтальной HBox

общественный класс MyBar расширяет HBox {

public function MyBar() { 
super(); 

this.height = 65; 
this.percentWidth = 100; 

var newButton:Button = new Button(); 
//..... 
newButton.y = 20; 

var spacer1:Spacer = new Spacer(); 
spacer1.percentWidth = 50; 

var spacer2:Spacer = new Spacer(); 
spacer2.percentWidth = 50; 

this.addChild(spacer1); 
this.addChild(newButton); 
this.addChild(spacer2); 

} 

}

Это отображает кнопку в центр HBox, но кнопка выровнена в верхней части окна, я хотел бы, чтобы она была в центре.

Уверен, что у меня было это раньше, так же, как установка значения y. Но сейчас, похоже, не работает. Я использую SDK 3.3

У кого-нибудь есть подсказки относительно того, почему у меня возникают трудности с этим?

Спасибо!

ответ

11

Установка y не будет работать, так как HBox управляет положениями y. Если вы хотите, чтобы все кнопки, которые будут помещены в середине HBox вам нужно установить VerticalAlign к среднему

в коде, который будет

setStyle("verticalAlign", "middle"); 
+0

это не похоже на работу :( – adam

+0

Адам ... убедитесь, что вы устанавливаете verticalAlign: middle, на HBox, а не на кнопки. –

Смежные вопросы