Javafx 如何旋转标签

Javafx 如何旋转标签,javafx,javafx-8,Javafx,Javafx 8,在JavaFX8中,我想指定css来旋转标签,这样文本就不是从左到右,而是从下到上 如何操作?调用标签上的setRotate,使其围绕中心旋转 要允许布局窗格在旋转后正确测量标签的边界,请将其包装在组中: import javafx.application.Application; import javafx.geometry.Pos; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.contro

在JavaFX8中,我想指定css来旋转标签,这样文本就不是从左到右,而是从下到上


如何操作?

调用标签上的
setRotate
,使其围绕中心旋转

要允许布局窗格在旋转后正确测量标签的边界,请将其包装在
组中

import javafx.application.Application;
import javafx.geometry.Pos;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;

public class RotatedLabelTest extends Application {

    @Override
    public void start(Stage primaryStage) {
        Label label1 = new Label("Hello");
        Label label2 = new Label("World");

        label1.setRotate(-90);
        Group labelHolder = new Group(label1);

        HBox root = new HBox(5, labelHolder, label2);
        root.setAlignment(Pos.CENTER);

        Scene scene = new Scene(root, 250, 150);
        primaryStage.setScene(scene);
        primaryStage.show();

    }

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

任何节点都可以使用CSS属性通过CSS设置其旋转样式

这是以度为单位的旋转角度。零度是在3点钟(直接向右)。角度值为正顺时针方向。旋转是围绕中心的

因此,在代码或FXML中,您可以有:

label.setStyle("vertical");
在css样式表中,您可以定义:

.vertical { -fx-rotate: -90; }

另请注意James_D的回答建议,即在执行布局边界计算时,将标签包装在一个组中,以说明旋转。

谢谢,您知道是否有css用于此操作吗?不,我不相信旋转属性是可样式化的。谢谢您调用定位。小组的事情似乎并没有解决它,而是创造了一个新的问题,并包括了一个定位的问题。啊,它是可以设计的。看看jewelsea的答案,我觉得比这个更好。。。