![](/img/trans.png)
[英]How to display Image form JTable into JLabel or from database to JLabel using JTable mouse click event?
[英]how set Image in jTable cell when click(Mouse Event) the row?
单击(鼠标事件)行时如何在jTable单元格中设置图像?如果选择第一行,图像将显示在该行中。然后单击第二行,图像将显示在第二行中?使用表格单元格渲染器或准备渲染器?
如果只希望图像显示在表格单元格中,请为ImageIcon
使用默认渲染器 ,并确保TableModel
为该列返回ImageIcon.class
。
如果您希望图像显示为响应单击,请考虑使用TablePopupEditor
的变体和TablePopupEditor
setClickCountToStart(1)
并将图像作为Icon
。
这是关于在JTable中显示图像的第四个问题,所以我猜您已经知道该怎么做。
因此,如果要在选择更改时更新行,则需要使用ListSelectionListener。 然后,当侦听器触发时,您将需要更新TableModel以从上一行中删除图标,并更新当前行中的图标。
JList:先前选择的项目显示您可以获取要更新的行号。
最好的方法是使自己拥有表格单元格渲染器。
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
if(isSelected){
return new Image(); // if selected
}
return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); // if not selected do the normal stuff
}
这样的事情。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.