java - 选项而不是 JTable

标签 java swing jtable renderer

  1. 我想为表格的每一行着色, 通过使用数据库的特定值

      spcification of mine database is some what like
    
       **
       id     name    color
       1      pavan   red
       2      xyz     white
       **
    
  2. 我可以使用颜色来完成表格

       table.setBackground(new color(158,145,134);       
    
    
    
    
       please provide me some solution or hint to approch towards answer,
       Thanks in advance.
    

最佳答案

使用 JTable 一点也不难!事实上,这非常简单!

在这里查看我的答案:Highlight a cell in JTable via custom table model

为了方便转载:

<小时/>

...子类 JTable 并覆盖 JTable.preparedRenderer(TableCellRenderer renderer, int row, int column) 。如果数字相同,您可以更改作为显示返回的Component的背景颜色(通常是 JLabel);

下面是突出显示鼠标所在行的示例:

@Override
public Component prepareRenderer(final TableCellRenderer renderer, final int row, final int column) {
    final Component c = super.prepareRenderer(renderer, row, column);
    if (row == this.itsRow) {
        c.setBackground(Color.RED);
    }
    return c;
}

其中 this.itsRow 是由 MouseMotionListener 更新的 int 字段:

this.addMouseMotionListener(new MouseMotionListener() {
        public void mouseMoved(MouseEvent e) {
            SubclassedJTable.this.itsRow = SubclassedJTable.this.rowAtPoint(e.getPoint());
            SubclassedJTable.this.repaint();
        }
        public void mouseDragged(MouseEvent e) {/***/}
    });

关于java - 选项而不是 JTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9943544/

相关文章:

java - 如何在Android上删除一个文件夹中的所有文件和文件夹

java - 如何包含 java src 代码,以便我可以在 Android Studio 中使用它

java - 使用 JDBC 准备好的语句插入时出错

java - JOptionPane.showInternalInput 对话框不可编辑

java - 当输入无效时禁用 JFace-InputDialog 的 OK 按钮

java - 扩展 JPanel 在添加到另一个 JPanel 时显示很小

java - Swing 在不同的平台上工作不同

java - 将 Blob 值从 JTable 单元格显示到 JLabel

java - 逐列向 JTable 添加数据

java - 将 jtable 中的编辑和删除信息添加到数据库