Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package feb24_test;
- import javax.swing.JTable;
- import javax.swing.SwingUtilities;
- import javax.swing.JFrame;
- import javax.swing.JPanel;
- import javax.swing.JScrollPane;
- import javax.swing.table.TableCellRenderer;
- import java.awt.Dimension;
- import java.awt.GridLayout;
- import java.awt.Component;
- import java.awt.Color;
- public class ColorTable extends JTable {
- private static final String[] columnNames =
- {"First Name", "Last Name", "Sport",
- "# of Years", "Vegetarian"};
- private static final Object[][] data = {
- {"Mary", "Campione", "Snowboarding",
- new Integer(5), new Boolean(false)},
- {"Alison", "Huml", "Rowing",
- new Integer(3), new Boolean(true)},
- {"Kathy", "Walrath", "Knitting",
- new Integer(2), new Boolean(false)},
- {"Sharon", "Zakhour", "Speed reading",
- new Integer(20), new Boolean(true)},
- {"Philip", "Milne", "Pool",
- new Integer(10), new Boolean(false)} };
- public ColorTable() {
- super(data, columnNames);
- setUpJFrame();
- }
- private void setUpJFrame() {
- JFrame frame = new JFrame();
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.add(getTablePanel());
- frame.pack();
- frame.setVisible(true);
- }
- private JPanel getTablePanel(){
- JPanel jPanel = new JPanel(new GridLayout(1,0));
- jPanel.setOpaque(true);
- setPreferredScrollableViewportSize(new Dimension(500, 70));
- jPanel.add(new JScrollPane(this));
- return jPanel;
- }
- //--the beginning of Background color set--
- @Override
- public Component prepareRenderer(
- TableCellRenderer renderer, int row, int col) {
- Component c = super.prepareRenderer(renderer, row, col);
- if (row % 2 == 0 && !isCellSelected(row,col)) {
- c.setBackground(Color.LIGHT_GRAY);
- } else {
- c.setBackground(getBackground());
- }
- return c;
- }
- //--the end of Background color set--
- public static void main(String[] args) {
- SwingUtilities.invokeLater(new Runnable() {
- public void run() {
- new ColorTable();
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment