package again;
import java.awt.Color; import java.util.Vector; import javax.swing.Box; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.JTableHeader; import javax.swing.table.TableCellRenderer; public class Tableexp extends JFrame { private JPanel rightpane; private JTable table1,table2; public Tableexp() { super("table1"); setSize(500,400); setLocation(100,100); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Box rightbox=Box.createVerticalBox(); Box leftbox=Box.createVerticalBox(); Box bigbox=Box.createHorizontalBox(); //left String []clomnnames={"A","B","C"}; String [][]rowdata={{"A1","B1","C1"},{"A2","B2","C2"},{"A3","B3","C3"},{"A1","B1","C1"},{"A2","B2","C2"},{"A3","B3","C3"}}; table1=new JTable(rowdata,clomnnames); JScrollPane scroll=new JScrollPane(); scroll.setViewportView(table1);//**** leftbox.add(scroll); bigbox.add(leftbox); //right Vector<String> clomnnames1=new Vector<String>(); Vector rowvalues1=new Vector(); clomnnames1.add("A"); clomnnames1.add("B"); for(int row=1;row<5;row++) { Vector<String> values1=new Vector<String>(); values1.add("A"+row); values1.add("B"+row); rowvalues1.add(values1); } table2=new MyTable(rowvalues1,clomnnames1); JTableHeader header=table2.getTableHeader(); table2.setSelectionBackground(Color.orange); rightpane=new JPanel(); rightpane.add(header,"NORTH"); rightpane.add(table2); bigbox.add(rightpane); add(bigbox); } private class MyTable extends JTable{ public MyTable(Vector row,Vector clomn) { super(row,clomn); } @Override public JTableHeader getTableHeader() { JTableHeader header=super.getTableHeader(); header.setReorderingAllowed(false); DefaultTableCellRenderer hr=(DefaultTableCellRenderer)tableHeader.getDefaultRenderer(); hr.setHorizontalAlignment(DefaultTableCellRenderer.CENTER); return header; } @Override public TableCellRenderer getDefaultRenderer(Class<?> columnClass) { DefaultTableCellRenderer cr=(DefaultTableCellRenderer)super.getDefaultRenderer(columnClass); cr.setHorizontalAlignment(DefaultTableCellRenderer.CENTER); return cr; } @Override public boolean isCellEditable(int row, int column) { return false; } } public static void main(String[] args) { Tableexp tt=new Tableexp(); tt.setVisible(true); } }