Non riesco a trovare una soluzione, spero qualcuno possa aiutarmi.

Ho un MainFrame in cui utilizzo un CardLayout; per prima viene mostrata la HomeFrame in cui c'è una tabella che visualizza una lista di nomi presi dal database.
Quello che devo fare è questo: al click su una cella (contenete un determinato nome) si apre la seconda "card" (SchedaFrame) in cui dovrò mostrare una tabella contenente tutti i dati (presenti nel db) di quel determinato nome. Ho utilizzato un mouse listener che è questo:
codice:

codice:
class MousePressListener implements MouseListener
        {
           public void mouseClicked(MouseEvent e) 
           {
              Point point = e.getPoint();
              int row = names.rowAtPoint(point);
              int col = names.columnAtPoint(point);
              String selected = names.getValueAt(row, col).toString();
              SchedaFrame c = new SchedaFrame(mainFrame);
              c.showData(selected);
              mainFrame.goSchedaFrame();
           }
         @Override
         public void mouseEntered(MouseEvent e) {
            // TODO Auto-generated method stub            
         }
         @Override
         public void mouseExited(MouseEvent e) {
            // TODO Auto-generated method stub            
         }
         @Override
         public void mousePressed(MouseEvent e) {
            // TODO Auto-generated method stub            
         }
         @Override
         public void mouseReleased(MouseEvent e) {
            // TODO Auto-generated method stub
         }
      }


Nella SchedaFrame succede questo:
codice:

codice:
public class SchedaFrame extends JPanel
{
   private JScrollPane scroll;
   private JTable scheda;
   private TableModelCard table; 
   ArrayList<TabellaDB> data = new ArrayList<TabellaDB>();

   public SchedaFrame(MainFrame mainFrame) throws HeadlessException
   {    
      table = new TableModelCard(data);
      scheda = new JTable(table);
      scroll = new JScrollPane(scheda);
      add(scroll, BorderLayout.CENTER);
   }

   public void showData(String selected)
   {
      data = TabellaDBDAO.showAll(selected);
   }
}


Quello che succede è che mostra solo il contenuto del costruttore, e del metodo "showData()" non se ne importa niente. So che è sbagliato quello che c'è in SchedaFrame, ma vorrei sapere se qualcuno può aiutarmi a capire come fare a passare il valore su cui clicco, per far comparire i suoi dati. E' una cosa che mi servirà in molte parti del programma, quindi ne devo venire a capo.

Ringrazio chi mi aiuterà.
Anche se devo cambiare molte cose, qualsiasi tipo di soluzione sarà ben accetta.