在一个JScrollPane中放入一个JTable.如果这个JTable的行数不多,就会在JTable的下半部分留出一块灰色的区域,怎么才能改变这个灰色区域的颜色呢?

解决方案 »

  1.   

    你把布局弄好了
    就不会有这样的问题了啊
    设成BorderLayout这种的把他放到上面
      

  2.   

    import java.awt.BorderLayout;
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import java.awt.Color;public class TableColor {    private JTable table;
        private JFrame frame;    public static void main(String args[]) {            TableColor window = new TableColor();
                window.frame.setVisible(true);    }    public TableColor() {
            initialize();
        }    private void initialize() {
            frame = new JFrame();
            frame.getContentPane().setLayout(new BorderLayout());
            frame.setBounds(100, 100, 500, 375);
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        final JScrollPane scrollPane = new JScrollPane();
            frame.getContentPane().add(scrollPane, BorderLayout.CENTER);        table = new JTable(20, 5);
            table.setSelectionBackground(Color.red);
            table.setCellSelectionEnabled(true);
            scrollPane.setViewportView(table);
        }}
    仅供参考
      

  3.   

    你那空出的区域是属于scrollpane的.所以你设置一下scrollpane的背景色.
    或者用table的空行填满整个srcollpane.
      

  4.   

    如果直接设置scroll不行的话,设置scrollpane.getViewport().setBackground()...