JTable中让某一列的值以tip提示的形式显示出来

因为在项目中碰到表格的某一列的值有时候会长的有些另类,导致不能看全其中的内容。

很简单的场景:当鼠标移动到表格的目标列时,将该单元格的内容以tip提示的形式显示,鼠标一离开该单元格,tip提示立刻消失。

 

当时想,可能要用鼠标事件,然后用table设置tip提示,结果只能完成一半的效果,果断放弃。然后想到用渲染器器,

渲染器会将表格中的每个单元格都进行渲染。这样在table里用下面写的渲染器设置为默认的渲染器,就可以了。

table的鼠标事件都不用了。

 

import java.awt.Component;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;

public class MyRenderer extends DefaultTableCellRenderer
{
 /**
  *
  */
 private static final long serialVersionUID = 1L;

 
 @Override
 public Component getTableCellRendererComponent(JTable table, Object value,
   boolean isSelected, boolean hasFocus, int row, int column)
 {
  super.getTableCellRendererComponent(table, value, isSelected, hasFocus,
    row, column);
  
  if (column == 4 && !"".equals(value.toString()))
  {
   setToolTipText(value.toString());
  }
  else
  {
   setToolTipText(null);
  }
  return this;
 }
 
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值