Valor digitado no campo JTextField não é recuperado  XML
Índice dos Fóruns » Interface Gráfica
Autor Mensagem
fgsl
Entusiasta Java
[Avatar]

Membro desde: 10/09/2008 09:12:55
Mensagens: 23
Localização: *
Offline

Estou fazendo uma aplicação Swing para testar uma camada de acesso a banco de dados.

Tenho um cadastro de funcionários, que é uma tabela relacionada com diversas outras, referentes a localização do funcionário na hierarquia da empresa.

Então imaginei duas telas. A primeira mostra a lista de funcionários em um grid e tem botões pra incluir, alterar e excluir funcionários. Ok, essa parte está funcionando. Comecei então a implementar o tratamento dos eventos. Comecei com a exclusão que sempre é mais fácil. Deu certo. Agora parti para a inclusão.

Ao clicar no botão incluir, é construído um formulário com o seguinte método:



Antes que perguntem, eu criei o método getGBC() pra retornar um objeto GridBagConstraints já configurado:



Bem, a tela acima é apresentada, normalmente. Como podem notar, há um botão gravar. Ele invoca o ActionPerformed. Eu colocarei abaixo só até o trecho onde o problema começa:



Quando o botão gravar é pressionado, o ActionPerformed entra no case GRAVAR. Minha idéia e jogar os componentes visuais em uma matriz e em um loop, gravá-los no objeto POJO correspondente, usando a API de Reflection. Eu não quero ter que fazer a chamada dos métodos set um por um. Se o campo visual já contém o nome do atributo, posso montar o nome do método e chamar.

Só que quando eu debuguei o conteúdo de componentes, que são JLabels, JTextFields e JComboBox, o getText() dos dois últimos não retorna nada! Por que o valor que eu digitei na tela foi ignorado?

This message was edited 1 time. Last update was at 10/09/2008 15:18:50


Flávio Gomes da Silva Lisboa
Analista de Desenvolvimento de Sistemas
[WWW] [Yahoo!] aim icon [MSN] [ICQ]
fgsl
Entusiasta Java
[Avatar]

Membro desde: 10/09/2008 09:12:55
Mensagens: 23
Localização: *
Offline

Bem, como não houve resposta, eu resolvi o problema de outra forma.
Criei dois atributos privados, um List para JTextFields e um para JTextCombos.

Eliminei o atributo janelaAtual.

Assim, conforme vou criando os elementos visuais, vou armazenando os campos editáveis nos Lists, e aí recupero direto. Isso reduziu o código inclusive.

Flávio Gomes da Silva Lisboa
Analista de Desenvolvimento de Sistemas
[WWW] [Yahoo!] aim icon [MSN] [ICQ]
 
Índice dos Fóruns » Interface Gráfica
Ir para:   
Powered by JForum 2.1.8 © JForum Team