2017-02-15 12 views
0

経由のHBox内のVBox私は1つのHBoxで4 VBoxesを作成したいこのコードでは、コントローラ

 var count= 4; 

     var hbox = new sap.m.HBox("HBox", { 
      width: "100%" 
     }); 

     for(var i = 0; i <= count; i++){ 
      new sap.m.VBox("V_" + i, { 
       width: "100px", 
       height: "200px", 
      }).placeAt(hbox); 
     }; 
     this.getView().byId("myContainer").addContent(hbox); 

しかし、唯一のHBoxがVboxesなしであります。何か案は?

答えて

0

jsbin exampleをご覧ください。お探しのレイアウトですか?

var oLabelA = new sap.m.Label({text:"A"}); 
var oLabelB = new sap.m.Label({text:"B"}); 
var oLabelC = new sap.m.Label({text:"C"}); 
var oLabelD = new sap.m.Label({text:"D"}); 

var oVbox1 = new sap.m.VBox({width: "100%"}); 
var oVbox2 = new sap.m.VBox({width: "100%"}); 
var oVbox3 = new sap.m.VBox({width: "100%"}); 
var oVbox4 = new sap.m.VBox({width: "100%"}); 

oVbox1.addItem(oLabelA); 
oVbox2.addItem(oLabelB); 
oVbox3.addItem(oLabelC); 
oVbox4.addItem(oLabelD); 

var hbox = new sap.m.HBox({ width: "100%"}); 

hbox.addItem(oVbox1); 
hbox.addItem(oVbox2); 
hbox.addItem(oVbox3); 
hbox.addItem(oVbox4); 
0

あなたのコードの問題は、あなたがコントロールを配置するplaceAt機能を使用しています。 placeAt関数は、という内容の集計がの場合、HTML DOM要素またはコントロール内にSAPUI5コントロールを配置するために使用されますが、他の集計内に配置するには、特定のセッター/ゲッターを使用します& add/remove関数。

この場合のHBoxは、アイテムアグリゲーションを持つFlexBoxコントロールを拡張します。したがって、コントロールを追加する方法はaddItemになります。

var count = 4; 

     var hbox = new sap.m.HBox("HBox", { 
      width: "100%" 
     }); 

     for (var i = 0; i <= count; i++) { 
      hbox.addItem(new sap.m.VBox("V_" + i, { 
       width: "100px", 
       height: "200px", 
      })); 
     }; 
     this.getView().byId("myContainer").addContent(hbox); 
関連する問題