java - 如何在锚定 Pane 中居中 ImageView ?

标签 java user-interface imageview javafx scenebuilder

我正在使用场景构建器来创建我的 GUI,当用户在列表中选择项目时,我正在显示 ImageImage 有不同的大小,当 Image 小于它所在的 Pane 时,图像显示在 Pane 的左上角。如何让 ImageView 和/或 Image 显示在 Pane 的中央?

我查看了整个 javafx imageview 和图像 API,但我没有找到太多关于在 Pane 中将 ImageView 居中的信息。我也没有在场景生成器中看到任何东西。通常在scene builder中,如果有办法让节点居中,就会有居中的选项。

最佳答案

在任何类型的 Pane 中,现在都可以在特定位置设置图像对齐方式。为此,您可以尝试使用 HBox

当您将 Image 插入 HBox 时,最初显示如下。

screenshot

现在设置HBox的对齐属性

screenshot

现在将对齐方式更改为居中并查看输出

screenshot

希望对你有用

也可以通过获取图像在 Pane 中以编程方式执行此操作

试试这个

AnchorPane anchorPane = new AnchorPane();
Image img = new Image(getClass().getResourceAsStream("Edit-Male-User-icon.png"));
ImageView imageView = new ImageView(img);
anch.getChildren().add(imageView );
ImageView app = (ImageView) (Node) anchorPane.getChildren().get(0);
app.setX(100);
app.setY(100);

关于java - 如何在锚定 Pane 中居中 ImageView ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20014787/

相关文章:

java - 获取JPanel、JFrame当前大小

c# - 目前有哪些Windows GUI框架值得学习?

android - 使用animationDrawable在android中播放大PNG帧动画

java - 两个相同的接口(interface) : Yet, 不能转换为另一个吗?

C# 和 Qt GUI Spring

java - 如何使用模式获取 DOM 中的下一个可用节点?

android - 如何在 Android 的 ImageView 中画一条线?

java - 如何在 src 的 imageView 中设置正确的方向

java - 原始流与对象流和发生的实际装箱

java - Java Servlet API session 处理中的自定义 ID