KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > snow > sortabletable > TableKeyBehaviourTest


1 package snow.sortabletable;
2
3 import javax.swing.*;
4 import javax.swing.event.*;
5 import java.awt.*;
6 import java.awt.event.*;
7 import javax.swing.table.*;
8 import java.util.*;
9
10
11 public class TableKeyBehaviourTest extends JFrame
12 {
13   TestModel testModel = new TestModel();
14   JTable table = new JTable();
15
16
17   public TableKeyBehaviourTest()
18   {
19     super("Test");
20     super.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
21     getContentPane().setLayout(new BorderLayout());
22
23     getContentPane().add(new JScrollPane(table), BorderLayout.CENTER);
24
25     // not sortable
26
//table.setModel(testModel);
27

28     // sortable
29
SortableTableModel stm = new SortableTableModel(testModel,0,true);
30     table.setModel(stm);
31     stm.installGUI(table);
32
33     //final JTextField textEditor = new JTextField();
34
//table.setDefaultEditor(String.class, new CellEditor(textEditor));
35
//table.setDefaultEditor(Double.class, new CellEditor(textEditor));
36
//table.setCellEditor(new CellEditor());
37

38     table.setDefaultEditor(Double JavaDoc.class, new NumberTableCellEditor());
39     //table.setCellEditor(new NumberTableCellEditor());
40
table.setDefaultRenderer(Object JavaDoc.class, new CellRenderer());
41
42     table.setColumnSelectionAllowed(false);
43     table.setRowSelectionAllowed(false);
44
45     setSize(800,800);
46     setVisible(true);
47   } // Constructor
48

49   public static void main(String JavaDoc[] ignored)
50   {
51     new TableKeyBehaviourTest();
52   }
53
54   class CellRenderer extends DefaultTableCellRenderer
55
56
57   {
58      //JTextField textField = new JTextField();
59
public CellRenderer()
60      {
61      }
62
63      public Component getTableCellRendererComponent(JTable table, Object JavaDoc value, boolean isSelected, boolean hasFocus, int row, int column)
64      {
65        Component sup = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
66        //textField.setText(""+value);
67

68     if (hasFocus) {
69        sup.setForeground(table.getSelectionForeground());
70        sup.setBackground(table.getSelectionBackground());
71     }
72     else {
73         sup.setForeground(table.getForeground());
74         sup.setBackground(table.getBackground());
75     }
76
77        return sup;
78      }
79
80   }
81
82 } // TableKeyBehaviourTest
Popular Tags