JavaFX:ImageView显示图片问题

窗口ImageView显示生成的图片,

问题:显示的是上一次生成的图片,不是这一次生成的图片;

出现问题的代码:

//错误写法,因为会预加载好图片,不会显示出处理后得到的图片,所以只会显示上一次得到的结果 
Image image = new Image(showImage.class.getResourceAsStream("out.png"));

解决方法:将上面代码修改为:

Image image = new Image("file:图片绝对路径");

然后再使用ImageView:

ImageView imageview=new ImageView(image);

转载原文:http://www.cnblogs.com/fanghuiplus/p/JavaFX.html

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaFX中,ImageView用于显示图像。如果您的ImageView没有显示图像,可能是以下几个原因之一: 1. 图片路径错误:请确保您提供的图片路径是正确的。可以使用绝对路径或相对路径来指定图片的位置。例如,如果图片位于与您的Java文件相同的目录中,您可以使用相对路径来指定图片的位置。 2. 图片不存在:请检查您指定的图片是否存在于指定的路径中。您可以尝试打开该图片文件以确认它是否可访问。 3. 图片加载失败:有时候,图片加载可能会失败。您可以通过捕获异常来检查是否出现了加载错误,并根据需要采取适当的措施。 以下是一个简单的示例代码,显示如何在JavaFX中使用ImageView显示图片: ```java import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.layout.StackPane; import javafx.stage.Stage; public class ImageViewExample extends Application { @Override public void start(Stage primaryStage) { // 创建一个ImageView对象 ImageView imageView = new ImageView(); try { // 加载图片 Image image = new Image("path/to/your/image.jpg"); // 设置ImageView图片 imageView.setImage(image); } catch (Exception e) { e.printStackTrace(); } // 创建一个StackPane来放置ImageView StackPane root = new StackPane(); root.getChildren().add(imageView); // 创建一个Scene并将根节点添加到其中 Scene scene = new Scene(root, 300, 200); // 设置舞台的场景并显示舞台 primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } } ``` 确保将`"path/to/your/image.jpg"`替换为实际的图片路径。如果图片存在且路径正确,您应该能够看到图片显示JavaFX窗口中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值