我正在研究Swing的应用程序和哪些我正在获取数据和我正在使用摆动Jtable渲染渲染图像中,但是当数据更是它所有时间挂起我能做些什么来阻止呢?JTable图像渲染是花费太多的负载在应用程序
示例渲染,我正在使用。
public class DefaultTableCellRenderer extends javax.swing.table.DefaultTableCellRenderer {
JLabel jLabel;
public DefaultTableCellRenderer() {
jLabel = new JLabel();
}
public Component getTableCellRendererComponent(
JTable table, Object value, boolean selected, boolean focus, int row, int col) {
try {
if (row == 1) {
jLabel.setIcon(new ImageIcon(ImageIO.read(getClass().getResource("blank.png"))));
jLabel.setText("Image Data");
jLabel.setBackground(Color.LIGHT_GRAY);
} else {
jLabel.setIcon(new ImageIcon(ImageIO.read(getClass().getResource("blank.png"))));
jLabel.setText("Final");
}
//jLabel.setIcon(new ImageIcon(ImageIO.read(new File("blank"))));
return jLabel;
} catch (Exception e) {
e.printStackTrace();
}
return jLabel;
}
@Override
public boolean mouseEnter(Event evt, int x, int y) {
System.out.println(jLabel.getText());
return true;
}
}
考虑提供一个[可运行示例]( https://stackoverflow.com/help/mcve)这表明你的问题。这将导致更少的混淆和更好的响应 – MadProgrammer 2014-09-04 07:08:41
@MadProgrammer是它的工作文件,但承受如此多的负载,我的意思是它需要太多的CPU。而数据更多。 – 2014-09-04 07:10:13
请勿从渲染器中加载图像。将它们放入可以单独查看的某种类型的缓存中。 – MadProgrammer 2014-09-04 08:07:35