你有MAIL地址吗。我给你发个例子过去。那里有全套的SWING的例子。含有你需要的。

解决方案 »

  1.   

    你有MAIL地址吗我给发个SWING的例子。含有各种SWING的操作,包含你需要的。
      

  2.   

    import javax.swing.*;
    import javax.swing.table.*;
    import javax.swing.event.*;import java.awt.event.*;
    import java.awt.event.*;
    import java.awt.*;public class SimpleTable
     implements ListSelectionListener {
      JTable aTable;
      public SimpleTable() {
       JFrame frame = new JFrame("Table");
       frame.addWindowListener(new WindowAdapter() {
          public void windowClosing(WindowEvent e) {System.exit(0);}});   final String[] names = {"First Name", "Last Name", "Id" };
       final Object[][] data = {
         {"Mark", "Andrews", new Integer(1)},
         {"Tom", "Ball", new Integer(2)},
         {"Alan", "Chung", new Integer(3)},
         };   TableModel dataModel = new AbstractTableModel() {
         public int getColumnCount() { return names.length; }
         public int getRowCount() { return data.length;}
         public Object getValueAt(int row, int col) {return data[row][col];}
         public String getColumnName(int column) {return names[column];}
         public Class getColumnClass(int col) {return getValueAt(0,col).getClass();}
         public void setValueAt(Object aValue, int row, int column) {
           data[row][column] = aValue;
           }
         };   aTable = new JTable(dataModel);
     
       ListSelectionModel listMod =  aTable.getSelectionModel();
       listMod.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
       listMod.addListSelectionListener(this);
     
       JScrollPane scrollpane = new JScrollPane(aTable);
       scrollpane.setPreferredSize(new Dimension(300, 300));
       frame.getContentPane().add(scrollpane);
       frame.pack();
       frame.setVisible(true);
       
       aTable.addMouseListener(new MouseAdapter(){
         public void mouseClicked(MouseEvent e){
          if (e.getClickCount() == 2){
             System.out.println(" double click" );
             }
          }
         } );
       aTable.getTableHeader().addMouseListener(new MouseAdapter()
       {
         public void mouseClicked(MouseEvent e)
         {
          TableColumnModel colModel =aTable.getColumnModel();
          int columnModelIndex =colModel.getColumnIndexAtX(e.getX());
          int modelIndex = colModel.getColumn(columnModelIndex).getModelIndex();
                
          System.out.println(" click on column " + modelIndex);
         }
      });
       } public void valueChanged(ListSelectionEvent e) {
       int maxRows;
       int[] selRows;
       Object value;   if (!e.getValueIsAdjusting()) {        
         selRows = aTable.getSelectedRows();     if (selRows.length > 0) {
            for (int i= 0; i < 3 ; i++) {
              // get Table data
              TableModel tm = aTable.getModel();
              value = tm.getValueAt(selRows[0],i);
              System.out.println("Selection : " + value );
              }
            System.out.println();
            }
         }
        }
        
        public static void main(String[] args) {
            new SimpleTable();
        }
    }