jtable

    xiaoxiao2021-03-25  89

    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);          } }
    转载请注明原文地址: https://ju.6miu.com/read-16397.html

    最新回复(0)