将图像放入JavaFX 2表

将图像放入JavaFX 2表,第1张

图像放入JavaFX 2表

好吧,我有一个巨大的假时刻。原来我的图片网址路径错误。

我确实找到了一个网站,该网站提供了为表添加元素的绝佳示例。这帮助我了解了一切。

现在,如果我尝试过的4种不同方法都能奏效,我不知道是因为我的图像URL路径错误。但是无论如何,这里是链接和代码片段。

最重要的是,您需要具有

CellValueFactory
CellFactory
。我正在尝试使用或。
updateItem
TableCell中的模板方法依赖于衍生的值
CellValueFactory

http://blog.ngopal.com.np/2011/10/01/tableview-cell-modifiyy-in-
javafx/

       TableColumn albumArt = new TableColumn("Album Art");    albumArt.setCellValueFactory(new PropertyValueFactory("album"));    albumArt.setPrefWidth(200);    // SETTING THE CELL FACTORY FOR THE ALBUM ART      albumArt.setCellFactory(new Callback<TableColumn<Music,Album>,TableCell<Music,Album>>(){ @Override    public TableCell<Music, Album> call(TableColumn<Music, Album> param) {  TableCell<Music, Album> cell = new TableCell<Music, Album>(){ @Override public void updateItem(Album item, boolean empty) {       if(item!=null){    HBox box= new HBox();         box.setSpacing(10) ;         VBox vbox = new VBox();         vbox.getChildren().add(new Label(item.getArtist()));         vbox.getChildren().add(new Label(item.getAlbum()));         ImageView imageview = new ImageView();         imageview.setFitHeight(50);         imageview.setFitWidth(50);         imageview.setImage(new Image(MusicTable.class.getResource("img").toString()+"/"+item.getFilename()));         box.getChildren().addAll(imageview,vbox);          //SETTING ALL THE GRAPHICS COMPonENT FOR CELL         setGraphic(box);     } }        };        System.out.println(cell.getIndex()); return cell;    }});


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5565530.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存