0

Container(この場合はHBoxですが、StackPane、VBox などの可能性があります);を作成しようとしています。これにはグループが含まれており、グループに関連付けられているのは MediaView です。

マージンなどを設定せずに単純にオブジェクトを作成すると、HBoxの開始(下の背景は青色) とグループの開始(下に MediaView が添付された緑色)の間に奇妙な 9 ピクセルのギャップが表示されます。

問題を示す画像 - HBox と MediaView の間の 9 ピクセルのギャップ

明示的に使用するroot.setTranslateX(-9);と、HBoxが 9 ピクセル以上移動し、オフセットされているため問題が軽減されたように見えます。ただし、これがこの問題を解決する唯一の方法です。私がそれを使用.setMargins(...);しても、まだこれを行います。

問題

なぜこれが起こるのかについてのアイデアはありますか?

これをもう一度試みました(以下のコード)。興味深いことに、ギャップが右側にあるように見えます。

別の試み

    public class HelloWorld extends Application {

    HBox root = new HBox();
    MediaView view = new MediaView();

    public HelloWorld(){

    }
    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) {
        primaryStage.setTitle("Hello World!");




        Group rootGroup = new Group();
        root.getChildren().add(rootGroup);
        root.setAlignment(Pos.CENTER_LEFT);
        root.setTranslateX(-9);
        root.setStyle("-fx-background-color: #039ED3;");
        rootGroup.getChildren().add(view);



        primaryStage.setScene(new Scene(root, 300, 250));
        primaryStage.show();
    }
}
4

0 に答える 0