有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在JavaFX中对齐一行?

line的文档说明了如何创建一条线,您需要指定线的起点X,Y和终点X,Y。这可以使用,但仅当场景的尺寸固定时。 我不想指定直线的起点X,Y和终点X,Y,我想直接指定直线的长度,直线的方向,并简单地使用root.setCenter(line);将其定位在场景的中心。我认为没有任何方法可以指定起点X,Y和终点X,Y线,然后在场景中心水平或垂直对齐。以下是我努力实现的一个例子: line represent

所以为了解决这个问题,我使用了一个BorderPane作为我的根,然后我想要一条水平线,并使用root.setCenter(lines);对齐它,但是我找不到这样的方法来对齐一条线。我怎样才能像其他节点一样,通过指定Pos.CENTER来指定场景中水平线的位置


共 (1) 个答案

  1. # 1 楼答案

    我找到了方法,正如@Fabian所说,你需要使用StackPane作为场景的根,并指定起点和终点X和Y,然后将其与StackPane对齐。以下是我使用的代码:

        private StackPane root = new StackPane();
        private Scene scene = new Scene(root, 1366, 768);
    
        @Override
        public void start(Stage primaryStage) {
            Line line = new Line(0,100,100,100);
            line.setStrokeWidth(20);
    
            StackPane.setAlignment(line, Pos.CENTER);
            root.getChildren().add(line);
    
            primaryStage.setTitle("Test");
            primaryStage.setScene(scene);
            primaryStage.show();
        }
    

    谢谢