Я не знаю, как полностью это описать, поэтому включил изображение ниже.

Мое представление таблицы находится справа и проводник Windows находится слева.
Вот код:
Код: Выделить всё
@Override
public void updateItem(ImageIcon imageIcon, boolean empty){
if (imageIcon != null){
// I have tried adding minimum width and height too
HBox box= new HBox();
// JavaFX scene imageview
ImageView imageView = new ImageView();
// Have tried with and without setFitHeight
imageView.setFitHeight(16);
imageView.setFitWidth(16);
// This line prints: 16 16
System.out.println(imageIcon.getIconWidth() + " " + imageIcon.getIconHeight());
// Create BufferedImage of the imageicon
BufferedImage bi = new BufferedImage(
imageIcon.getIconWidth(),
imageIcon.getIconHeight(),
BufferedImage.TYPE_INT_ARGB);
Graphics g = bi.createGraphics();
imageIcon.paintIcon(null, g, 0, 0);
g.dispose();
// BufferedImage to fxImage
Image fxImage = SwingFXUtils.toFXImage(bi, null);
imageView.setImage(fxImage);
box.getChildren().addAll(imageView);
setGraphic(box);
}
}
ОБНОВЛЕНИЕ
Я еще немного погуглил, скопировал пример и вставил его в новый проект, и то же самое произошло с иконками. В этом примере пользователь, вероятно, использовал Windows 7, судя по внешнему виду значков, так что, возможно, именно так это выглядит в Windows 8. Это был код в ответе внизу с картинкой: www.stackoverflow. ком/вопросы/28034432/
Подробнее здесь: https://stackoverflow.com/questions/307 ... -tableview
Мобильная версия