Auf Thema antworten

Ich persönlich würde es nicht so lösen.

Eine Möglichkeit die ich besser finde, man schreibt sich einen Renderer der andere Renderer aufnehmen kann.


[code=Java]

import java.awt.Color;

import java.awt.Component;

 

import javax.swing.JTable;

import javax.swing.table.TableCellRenderer;

 

 

public class WrappingCellRenderer implements TableCellRenderer {

   

    private TableCellRenderer wrappedCellRenderer;

   

    public WrappingCellRenderer(TableCellRenderer cellRenderer) {

        super();

        this.wrappedCellRenderer = cellRenderer;

    }

 

    @Override

    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {

        Component rendererComponent = wrappedCellRenderer.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);

       

        if(row % 2)

            rendererComponent.setBackground(Color.GRAY);

        else

            rendererComponent.setBackground(Color.WHITE );

 

       

        return rendererComponent;

    }

 

}

[/code]



[code=Java]

table.setDefaultRenderer(Object.class, new WrappingCellRenderer(table.getDefaultRenderer(Object.class)));

[/code]


Gruß


zerix



Oben