gpt4 book ai didi

java - 如何将图像路径转换为JLabel上的图像

转载 作者:行者123 更新时间:2023-12-01 11:07:41 24 4
gpt4 key购买 nike

当我从 JTable 中选择一条记录时,我希望在 JLabel 中显示给定路径的图像。当我编写代码时:

private void profile_tableMouseClicked(java.awt.event.MouseEvent evt) {
DefaultTableModel model = (DefaultTableModel) profile_table.getModel();
dr_profile_image.setIcon((Icon)model.getValueAt(profile_table.getSelectedRow(),9));
}

我收到以下错误:

Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: java.lang.String cannot be cast to javax.swing.Icon

最佳答案

抛出异常是因为您将 String 转换为 IconDefaultTableModel.getValueAt(int row, int col) 将 row,col 处的项目作为 Object 返回,其类类型是存储在表模型中的实例的类,在你的情况下是一个字符串。如果该值是您要使用的图像文件的路径,那么您将需要从该路径创建一个Icon。您可以使用 javax.swing.ImageIcon 来执行此操作:

import javax.swing.ImageIcon;

private void profile_tableMouseClicked(java.awt.event.MouseEvent evt)
{
DefaultTableModel model = (DefaultTableModel) profile_table.getModel();
dr_profile_image.setIcon(
new ImageIcon(model.getValueAt(profile_table.getSelectedRow(),9).toString());
}

关于java - 如何将图像路径转换为JLabel上的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32767961/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com