Como selecionar linha de um JTable e recuperar os dados?

Olá galera
Eu gostaria de saber como que eu faço pra quando eu clicar em alguma linha do JTable eu pegar esses dados, exemplo uma tabela com 2 colunas, nome e codigo, eu clico na linha onde ta cadastrada fulanadetal com o codigo 1, como eu faço pra recuperar esses dados quando eu clico nessa linha?

Se alguem puder ajudar agradeço desde ja

Atenciosamente

Oi,

Utilize o método getValueAt() da JTable:

tabela.getValueAt(int l, int c);

Tchauzin!

E ai cara, blz?

seguinte

você tem que adicionar um listener a sua JTable

searchResultTable.addMouseListener(new MouseListener() {
            public void mouseClicked(MouseEvent e) {
                System.out.println("mouseClicked " + searchResultTable.getSelectedRow());

            }
            public void mousePressed(MouseEvent e) {
                System.out.println("mousePressed " + searchResultTable.getSelectedRow());
            }
            public void mouseReleased(MouseEvent e) {
                System.out.println("mouseReleased " + searchResultTable.getSelectedRow());
            }
            public void mouseEntered(MouseEvent e) {
                System.out.println("mouseEntered " + searchResultTable.getSelectedRow());
            }
            public void mouseExited(MouseEvent e) {
                System.out.println("mouseExited " + searchResultTable.getSelectedRow());
            }
        });

Para vc é útil apenas o método mouseClicked. o resto vc não precisa implementar

Bom com isso vc sabe qual a linha agora é só recuperar os dados do TableModel pelo getValueAt

Espero ter ajudado

Obrigado a todos ^^

I ae galera
Blz deu certo esses comandos
Mais to com um probleminha
Quando eu clico em algum botão que trabalha com o banco o ADD, UPDATE e o DELETE trabalha normal só que ele dispara essa exception:

Exception in thread “AWT-EventQueue-0” java.lang.ArrayIndexOutOfBoundsException: -1
at java.util.Vector.elementAt(Vector.java:430)
at javax.swing.table.DefaultTableModel.getValueAt(DefaultTableModel.java:632)
at javax.swing.JTable.getValueAt(JTable.java:2695)
at EclusaGUI.mouseClicked(EclusaGUI.java:160)
at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:253)
at java.awt.Component.processMouseEvent(Component.java:6137)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5899)
at java.awt.Container.processEvent(Container.java:2023)
at java.awt.Component.dispatchEventImpl(Component.java:4501)
at java.awt.Container.dispatchEventImpl(Container.java:2081)
at java.awt.Component.dispatchEvent(Component.java:4331)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4301)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3974)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3895)
at java.awt.Container.dispatchEventImpl(Container.java:2067)
at java.awt.Window.dispatchEventImpl(Window.java:2458)
at java.awt.Component.dispatchEvent(Component.java:4331)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Segue o codigo abaixo para vcs entenderem melhor o problema:

[code]
public void mouseClicked(MouseEvent e) {

	if(e.getSource() == this.btnAdd){
		
		eclusa = new Eclusa();
		edb = new EclusaDB();
		
		eclusa.setCodEclusa(Integer.parseInt(txtCod.getText()));
		eclusa.setNomeEclusa(txtNome.getText());
		
		edb.addEclusa(eclusa);		
		jScrollPane.setViewportView(getTable());
		clear();
	}
	
	if(e.getSource() == this.btnUpdate){
		
		edb.updateEclusa(txtNome.getText(), Integer.parseInt(txtCod.getText()));
		jScrollPane.setViewportView(getTable());
		clear();
	}
	
	if(e.getSource() == this.btnDelete){
		
		edb.removeEclusa(Integer.parseInt(txtCod.getText()));
		jScrollPane.setViewportView(getTable());
		clear();
	}
	
		
		int row = table.getSelectedRow();
		
		txtCod.setText((String) table.getValueAt(row, 0 ));
		txtNome.setText((String) table.getValueAt(row, 1));
	
	
	
}[/code]

galerinha achei o problema

Obrigado a todos o problema era que eu tinha q adiciona esse comandos apenas para quando eu clicar na table.

[code]if(e.getSource() == this.table){

		txtCod.setText((String) table.getValueAt(table.getSelectedRow(), 0 ));
		txtNome.setText((String) table.getValueAt(table.getSelectedRow(), 1));
	}[/code]