Пустое поле JavaFX между двумя компонентами - как это исправить? - PullRequest
0 голосов
/ 11 ноября 2018

Я начал создавать новый проект JavaFX с помощью SceneBuilder. После установки ListView в качестве навигации (синий фон) и панели внутри hbox (красный фон) я запустил программу и получил пробел между listView и Hbox. Почему это там и как я могу это исправить?

Вот мой FMXL-код:

   <BorderPane fx:id="borderPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="700.0" prefWidth="1100.0" styleClass="parent" stylesheets="@application.css" xmlns="http://javafx.com/javafx/9.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="application.ApplicationController">
   <bottom>
      <HBox maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="30.0" prefWidth="1100.0" BorderPane.alignment="CENTER">
         <children>
            <Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="30.0" prefWidth="200.0" style="-fx-background-color: #c30221;" />
         </children>
      </HBox>
   </bottom>
   <left>
      <ListView fx:id="lvNavigation" focusTraversable="false" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="670.0" prefWidth="200.0" stylesheets="@../../bin/application/application.css" BorderPane.alignment="CENTER" />
   </left>
</BorderPane>

А это моя таблица стилей:

.parent{
    -fx-background-color: #ffffff;
    -fx-padding: 0;
    -fx-margin: 0;
}

.list-view{
    -fx-background-color: #0051a6;
}

.list-cell{
    -fx-background-color: #0051a6;
    -fx-cell-size: 75px;
    -fx-text-fill: white;
}

Вот мой главный класс:

    BorderPane root = (BorderPane) FXMLLoader.load(getClass().getResource("/fxml/application.fxml"));
    Scene scene = new Scene(root);
    scene.getStylesheets().add(getClass().getResource("/css/stylesheet.css").toExternalForm());
    primaryStage.setScene(scene);
    primaryStage.initStyle(StageStyle.DECORATED);
    primaryStage.setResizable(false);
    primaryStage.setTitle("Sneak/One");
    primaryStage.show();

SceneBuilder-View: SceneBuilder

После запуска: After running

...