如何使用 UIManager 更改 Jtable 中的行颜色

问题描述

我尝试使用 UIManager 更改 JTable 中聚焦单元格的边框颜色,并且效果很好。 但我不知道如何使用 UIManager 更改 JTable 中行的颜色。 谁能告诉我我可以在 UIManager.put(); 里面写什么?更改行的颜色。

这是代码

public class JTableExample 
{    
    JFrame f;  
    JPanel p2;

    JTableExample()
    {    
    f=new JFrame();  
    
    p2=new JPanel(new GridLayout());
    p2.setBackground(Color.white);
    p2.setBounds(0,40,946,561);
    
    String data[][]={ {"0","Raj","67"},{"1","Pranav","78"},{"2","Saurabh","70"}};  
  
    String column[]={"ID","NAME","Percentage"};   
      
    JTable jt=new JTable(data,column);    
    UIManager.put("Table.focusCellHighlightBorder",new BorderUIResource(BorderFactory.createLineBorder(Color.red)));
    JScrollPane sp=new JScrollPane(jt);  
    
    p2.add(sp);  
    
    f.setBounds(170,100,1250,600);    
    f.setVisible(true);
    f.add(p2);
    
    }     
    public static void main(String[] args)
    {    
        new JTableExample();    
    }    
}  

解决方法

谁能告诉我我可以在 UIManager.put() 中写什么?更改行的颜色。

通常您会更改 JTable 的属性:

table.setBackground(...);
table.setSelectionBackground(...);

如果您真的想尝试更改应用程序中所有 JTable 的默认值,请查看 UIManager Defaults。它提供了可以为每个 Swing 组件更改的属性列表。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...