Galera tem com eu desligar a tecla TAB em um JTable??? Minha JTable não é editavel, quero apenas select a linha desejada e sair, para navegar pelas linhas gostaria de usar apenas as SETAS, e quanto estiver na linha escolhida pressionar ENTER!! entao preciso do seguinte: Desligar TAB(assim o TAB sairia da JTable) e adicionar um ActionListener para o ENTER nas linhas da table!!!
na verdade você teria que adicionar um KeyListener a sua Table e fazer um if para filtrar o tab!
final JTable table = new JTable( new Object[][] { { "11", "12", "13" },
{ "21", "22", "23" } }, new Object[] { "1", "2", "3" } );
table.addKeyListener( new KeyAdapter()
{
@Override
public void keyPressed( KeyEvent e )
{
int keyCode = e.getKeyCode();
if( table.isFocusOwner() && keyCode == KeyEvent.VK_TAB)
{
// passa o foco para o próximo componente
table.setFocusable( false );
table.setFocusable( true );
}
else if( keyCode == KeyEvent.VK_ENTER )
{
// chama ação
}
}
} );
Vlw LIPE e Thiago, era exatamente o que eu procurava, na verdade era mais simples do que esperava, se eu tivesse pensado um pouco mais, hehe, é que são tantas coisa pra se pensar ao mesmo tempo!!! flw!!
[code] String[] nomes = {“Nome”,“Idade”};
Object[][] values = {
{“thiago”,new Integer(24)},
{“Gui”,new Integer(18)}
};
JTable table = new JTable(values, nomes);
table.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent arg0) {
if ( arg0.getKeyCode() == KeyEvent.VK_TAB)
arg0.consume();
else if (arg0.getKeyCode() == KeyEvent.VK_ENTER)
//executa a ação
}
});
[/code]