Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在imageview上设置文件(图像)_Image_Javafx - Fatal编程技术网

如何在imageview上设置文件(图像)

如何在imageview上设置文件(图像),image,javafx,Image,Javafx,我想在imageview上设置一个图像,从文件选择器中选择文件我使用了imageview.setImage(文件),这会提示一个错误:“文件无法转换为图像” 这是我的密码: @FXML private AnchorPane mainAnchorpane; @FXML private ImageView iconimageview; private File iconimage; @FXML public void iconimagebuttonAction(ActionEvent event

我想在imageview上设置一个图像,从文件选择器中选择文件我使用了imageview.setImage(文件),这会提示一个错误:“文件无法转换为图像”

这是我的密码:

@FXML
private AnchorPane mainAnchorpane;
@FXML
private ImageView iconimageview;
private File iconimage;

 @FXML
public void iconimagebuttonAction(ActionEvent event) {
    FileChooser filechooser = new FileChooser();
    iconimage = filechooser.showOpenDialog(mainAnchorpane.getScene().getWindow());
    System.out.println(iconimage.getName());
    if (iconimage != null) {
        String iconimagepath = iconimage.getAbsolutePath();
        System.out.println(iconimagepath);
        iconimageview.setImage(iconimage);
    }

}

不能将路径直接设置为。不存在接受文件路径作为参数的方法

尽管您可以使用ImageView的构造函数实现同样的功能,该构造函数接受URL作为参数

ImageView imageView = new ImageView(filepath)
或者,使用
文件路径创建
图像
对象,然后将其指定给ImageView

imageView.setImage(new Image(filepath));

我使用ImageView的构造函数来添加图像。但是我得到这个错误“是由以下原因引起的:java.lang.IllegalArgumentException:无效URL:未知协议:javafx.scene.image.image.validateUrl(image.java:1097)在javafx.scene.image.image.(image.java:598)在javafx.scene.image.ImageView.(ImageView.java:164)在fileshare_client.fx.pkg1.UploadappUI_1Controller.iconimagebuttonAction(UploadappUI_1Controller.java:355)“java:355,即“imageview=new imageview(iconimage.getAbsolutePath());”这是因为您需要在绝对路径后附加
文件:
,这可能会有帮助:[设置图像javafx时出现运行时错误illegargumentException]()