2017-01-04 3 views
0

Я новичок в javaFx и использую fxml для создания шаблонов. Я не могу сосредоточиться на Vbox в Pane, который слишком велик, хотя я уверен, что это должно быть довольно просто. Я также хочу границу вокруг VBox.Центр VBox в панели

Может ли кто-нибудь помочь? Вот что у меня есть:

<TitledPane text="Title" collapsible="false"> 
    <content> 
     <GridPane hgap="10" vgap="10"> 
      <children> 
       <VBox alignment="TOP_CENTER" spacing="10"> 
        <!-- Content --> 
       </VBox> 
      </children> 
      <columnConstraints> 
       <ColumnConstraints halignment="CENTER"/> 
      </columnConstraints> 
      <rowConstraints> 
       <RowConstraints/> 
      </rowConstraints> 
     </GridPane> 
    </content> 
    </TitledPane> 

Я думаю GridPane это плохая идея, но это, как я знаю, чтобы иметь границы, как я хочу их.

Спасибо за ваше время!

ответ

1

Я думаю, что GridPane - плохая идея, но я знаю, что у меня есть границы, как я их хочу.

Да, это так. Использование GridPane для одного ребенка является излишним. Просто используйте StackPane с padding из 10:

<TitledPane text="Title" collapsible="false"> 
    <content> 
     <StackPane> 
      <padding> 
       <Insets topRightBottomLeft="10"/> 
      </padding> 
      <children> 
       <VBox alignment="TOP_CENTER" spacing="10"> 
        <children> 
         <!-- Content --> 
        </children> 
       </VBox> 
      </children> 
     </StackPane> 
    </content> 
</TitledPane> 
+0

Это сделал трюк для заполнения (пришлось разделить сверху, справа, снизу и слева, хотя), но теперь таблицы (TableView, чтобы быть точным), содержащихся в Vbox занимают всю ширину (до того, как они занимают около 3/5 места и все время левее). Как я могу сосредоточить их? – ldebroux

+0

@ldebroux Установите ['fillWidth'] (https://docs.oracle.com/javase/8/javafx/api/javafx/scene/layout/VBox.html#fillWidthProperty) на' false' для 'VBox'. – fabian

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