Como selecionar todo texto de uma celula do JTable ao entrar na mesma?

2 respostas
leofdasilva

Boa tarde a todos.

Gostaria de saber como faço pra que quando eu clicar duas vezes em uma celula com a edição disponivel, ao entrar dentro da mesma para editar, fazer com que todo o conteudo original (ou seja, o que já esta na celula) fique todo selecionado?

Já tentei detudo porém nao encontrei uma solução.

Fico no aguardo e desde já agradeço.

2 Respostas

asandrob

Opa, eu fiz assim:

  1. Criei um JFormattedTextField.
  2. Adicionei um FocusListener.
  3. Criei um DefaultCellEditor com esse JFormattedTextField.
  4. Setei ele como editor da coluna em questão.
tabelaInventario = new JTable();	
//1) Criei um JFormattedTextField.
txtQuantidade = new JFormattedTextField(quantidadeFormat);
//2) Adicionei um FocusListener.
txtQuantidade.addFocusListener(new FocusAdapter() {
  @Override
  public void focusGained(FocusEvent e) {
    txtQuantidade.selectAll();
  }
});
//3) Criei um DefaultCellEditor com esse JFormattedTextField.
DefaultCellEditor editor = new DefaultCellEditor(txtQuantidade);
// para renderizer o número a direita
DefaultTableCellRenderer cellRenderer = new DefaultTableCellRenderer();
cellRenderer.setHorizontalAlignment(SwingConstants.RIGHT);
//
tabelaInventario.getColumnModel().getColumn(3).setPreferredWidth(100);
//4) Setei ele como editor da coluna em questão.
tabelaInventario.getColumnModel().getColumn(3).setCellEditor(editor);
tabelaInventario.getColumnModel().getColumn(3).setCellRenderer(cellRenderer);
tabelaInventario.getColumnModel().getColumn(3).setResizable(true);
leofdasilva

Puts muito foda cara! Valeu! Era isso mesmo que precisava! Valeu!

Criado 4 de julho de 2012
Ultima resposta 6 de jul. de 2012
Respostas 2
Participantes 2