java - 如何在 JavaFX 中对齐一行?
问题描述
line 的文档说如何制作一条线,您需要指定该线的开始 X、Y 和结束 X、Y。这可以使用,但前提是场景是固定尺寸的。而不是指定线的开始X,Y和结束X,Y我想直接指定线的长度,线的方向并简单地将它定位在场景的中心使用root.setCenter(line);
我不认为以任何方式指定线的起点 X、Y 和终点 X、Y,然后将其水平或垂直对齐到场景的中心。这是我要实现的目标的说明:
因此,为了解决这个问题,我使用 BorderPane 作为我的根,然后我想要一条水平线并使用它对齐它,root.setCenter(lines);
但是没有这样的方法来对齐我能找到的一条线。Pos.CENTER
我怎样才能通过像其他节点一样指定线的这个位置在场景上水平?
解决方案
我找到了如何做到这一点,正如@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();
}
谢谢。
推荐阅读
- python - 合并两个 2D numpy.ndarray
- xamarin.forms - 如何从 Xamarin.ios 访问 UIImagePickerController 快门 UiButton
- python - Pycharm 自动导入没有遵循最佳实践?
- java - 检查数据库中存在的大量字符串的有效方法
- javascript - 如何使用 Node.js 和 express 在 PostgreSQL 中不使用方括号换行来获取对象?
- node.js - Restful Api express postgres 数据库
- kubernetes - Kubernetes coredns pod 卡在 Pending 状态。无法启动仪表板
- scala - Scala 编译器扩展类型
- node.js - How do i create a public ledger using blockchain for my application?
- ionic-framework - @types/node@^8.0.7 的 npm WARN tarball tarball 数据似乎已损坏