table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
...
ListSelectionModel rowSM = table.getSelectionModel();
rowSM.addListSelectionListener(new ListSelectionListener() {
    public void valueChanged(ListSelectionEvent e) {
        //Ignore extra messages.
        if (e.getValueIsAdjusting()) return;
        
        ListSelectionModel lsm =
            (ListSelectionModel)e.getSource();
        if (lsm.isSelectionEmpty()) {
            ...//no rows are selected
        } else {
            int selectedRow = lsm.getMinSelectionIndex();
            ...//selectedRow is selected
        }
    }
});

解决方案 »

  1.   

    table.getValueAt(table.getSelectedRow(), 0);
      

  2.   

    最好是
    ((DefaultTableModel)table.getModel()).getValueAt(table.getSelectedRow(), 0);
    或者将列转化为模型列。不让显示的列变了之后会出错的。
    具体的方法:int intmodelColumn = jTable1.convertColumnIndexToModel(inttableColumn);
      

  3.   

    先定义:
        DefaultTableModel tableModel=new DefaultTableModel;
        JTable jTable1=new JTable(tableModel);
    然后:
         int row=jTable1.getSelectedRow;
         int col=jTables.getSelectedCol; 
         取值:value=tableModel.getValueAt(row,col);