hi,this is Jtable example.someone help me to modify it,and finish these job, one:when i press 'insert' in keyboard then the table will insert a row; two:when the focus at last row,when i press 'down' key in keyboard,then the table will add new row append the last row. best regards,thanks //-------------------------------begin import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.table.*; class RowHeaderRenderer extends JLabel implements ListCellRenderer { RowHeaderRenderer(JTable table) { JTableHeader header = table.getTableHeader(); setOpaque(true); setBorder(UIManager.getBorder("TableHeader.cellBorder")); setHorizontalAlignment(CENTER); setForeground(header.getForeground()); setBackground(header.getBackground()); setFont(header.getFont()); } public Component getListCellRendererComponent( JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { setText((value == null) ? "" : value.toString()); return this; } } public class RowHeaderExample extends JFrame { public RowHeaderExample() { super( "Row Header Example" ); setSize( 300, 150 ); ListModel lm = new AbstractListModel() { String headers[] = {"a", "b", "c", "d", "e", "f", "g", "h", "i"}; public int getSize() { return headers.length; } public Object getElementAt(int index) { return headers[index]; } }; DefaultTableModel dm = new DefaultTableModel(lm.getSize(),10); JTable table = new JTable( dm ); table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); JList rowHeader = new JList(lm); rowHeader.setFixedCellWidth(50); rowHeader.setFixedCellHeight(table.getRowHeight() + table.getRowMargin()); // + table.getIntercellSpacing().height); rowHeader.setCellRenderer(new RowHeaderRenderer(table)); JScrollPane scroll = new JScrollPane( table ); scroll.setRowHeaderView(rowHeader); getContentPane().add(scroll, BorderLayout.CENTER); } public static void main(String[] args) { RowHeaderExample frame = new RowHeaderExample(); frame.addWindowListener( new WindowAdapter() { public void windowClosing( WindowEvent e ) { System.exit(0); } }); frame.setVisible(true); } } //---------end 在網路上使用更多功能。下載免費 MSN Explorer: http://explorer.msn.com.tw: http://explorer.msn.com.tw |