02.表单元格渲染器的使用.pptVIP

  • 5
  • 0
  • 约3.41千字
  • 约 8页
  • 2018-06-23 发布于浙江
  • 举报
02.表单元格渲染器的使用

Java OOP 进阶之 表单元格渲染器 何杨 2008/01/10 使用表格渲染器渲染表格 在使用JTable时,用户往往希望改变它缺省的渲染方式,比如使用间隔色的行,对特定的单元格进行特殊颜色显示等,这对一些可视化编程环境的表格并不是一件容易的事。 在Java Swing编程中我们可以使用DefaultTableCellRenderer的子类渲染表格来达到这个目的,实现和使用它都非常容易。 渲染效果一: 步骤一:实现一个javax.swing.table.DefaultTableCellRenderer的子类 /** * 间隔色表格渲染类 */ public class ColorTableCellRenderer extends DefaultTableCellRenderer { private static final long serialVersionUID = -3378036327580475639L; public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { // 得到单元格 Component cell = super.getTableCellRendererComponent( table, value, isSelected, hasFocus, row, column); // 进行渲染 if (hasFocus) { // 如果获得焦点则设置背景色为红色 cell.setBackground(Color.red); //cell.setForeground(Color.black); } else { if ((row % 2) == 0) { // 偶数行设置为白色 cell.setBackground(Color.white); } else { // 奇数行设置为蓝色 cell.setBackground(Color.cyan); } } return cell; } } 步骤二:将ColorTableCellRenderer设置为表格的渲染器 try { ColorTableCellRenderer cellRender = new ColorTableCellRenderer(); table.setDefaultRenderer(Class.forName(java.lang.Object), cellRender); } catch (Exception e) { e.printStackTrace(); } 实现一个将特定单元格设置为红色的表格渲染器 如右,如果想将成员年龄大于37的单元格设置为红色。 AgeTableCellRenderer的代码 public class AgeTableCellRenderer extends DefaultTableCellRenderer { private static

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档