2009-04-16 5 views
2

J'ai un HBox personnalisé comme si ....Flex - Verticalement positions enfants d'un HBox horizontal

MyBar public class étend 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); 

} 

}

Cette affiche un bouton Le centre de la HBox, mais le bouton est aligné sur le haut de la boîte, je voudrais qu'il soit au centre.

Je suis sûr que j'ai déjà eu ce travail avant de simplement définir la valeur y. Mais ne semble pas fonctionner maintenant. J'utilise SDK 3.3

Quelqu'un at-il des indices quant à pourquoi j'ai de la difficulté avec cela?

Merci!

Répondre

11

La définition de y ne fonctionnera pas car HBox contrôle les positions y. Si vous souhaitez tous les boutons à placer au milieu du HBox vous devez définir verticalAlign au milieu

dans le code qui serait

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

cela ne semble pas fonctionner :( – adam

+0

Adam ... assurez-vous que vous définissez verticalAlign: middle, sur le HBox, pas les boutons. –

Questions connexes