JTable

9 respostas
ken420

Pessoal tenho 2 telas em aberto! o 1 form tem 1 tabela com um nome, ja criei o metodo para capturar a linha da minha jtable, o que me falta eh o seguinte: quando eu clicar nessa tabela ele capturar o campo nome selecionado dar um dispose(); na tela e levar para uma jtextfield! :l algueim me da uma maozinha?

9 Respostas

hodrigohamalho

Amigo, explique melhor o que você quer fazer.
isso ficou muito confuso…

table.getSelectionModel().getLeadSelectionIndex();
this.dispose();

isso deve ajudar…

ken420

umm ok vamos la, tenho uma jtable, com 2 campos codigo e nome, primeiro eu quero capturar o campo nome da linha selecionada e jogar para um jtextfield que esta em outra tela!

71C4700

Voce poderia implementar um listener para sua tabela, ai o evento dispararia e modificaria o ouro formulario.

Da uma procurada no padrão Observer…

ken420

padrao observer que vc dis eh no caso padrao de projeto OBSERVER? pq se for tenho um livro aqui use a cabeca java padroes de projetos n sei se é disso que esta falando

71C4700

Justamente este sujeito… :lol:

Tipo ficaria sua JTable sendo o source e seu outro formularia um listener. Voce poderia implementar seu proprio evento acrescentando uma valor, o numero de linhas selecionadas, qualquer coisa a mais. Ou poderia Implementar uma classe que implementas ActionLisntener e MouseListener e colocar as ações, oque devereia ser feito quando selcionarmos uma linha desta JTable ai vc adicionaria esta classe como listener no seu formulario.

De uma esdudada neste padrão, será de grandee auxilio pois o Swing é baseado tanto do MVC quanto no Observer para controle de eventos, ele já tem muito controladores de ventos prontos…

ken420

Depois de muito trabalho eu consegui copiar minha linha da jtable! e armazenei o texto em uma string chamada nome2;
agora veja o q preciso fazer eu capturo essa String nome2 quando seleciono uma linha na jtable e cliquo no botao inserir, ta mas agora preciso que ele feche essa tela no caso irei usar a função dispose(); ate ai tudo bem mas como vou fazer para quando fechar essa tela de insersão ele inserir automaticamente em um jTextfield a minha String nome2, no qual selecionei na janela anterior! oq fazer?!?!?!?!? :roll:

71C4700

Neste momento agora, apos vc ja possuir o valor do nome.Vc deve de alguma forma ter uma referencia para a tela que voce irá setar o valor.

Caso esta JTbable esteja na mesma interface grafica de seu JTextField, só é necessario voce fazer algo mais ou menos assim

String nome = "O nome de uma pessoa"; // Valor que vc capturou na seleção de sua JTable

jTextFieldNome.setText(nome);//supondo que seu JTextField que aramazene o nome seja o jTextFieldName
Acho que funciona!

Outra solução seria vc capturar todo o objeto desa linha, e ter um metodo que setaria em todos os campos a propriedade que desejasse em casa JTextField.

ken420

entao o problema é que essa jtable esta no form A, e o jtextfield esta no form B, como vo inserir a string da jtable do form A no jtextfield do form B?

71C4700

Agora ou vc constroi um metodo no Form B ou adciona este forme B como sendo um listener do FormA ai implementa ele com o codigo

public void addMsg(String msg){ jTextFieldNome.setText(msg); }

Agora isso no Form B

Criado 18 de fevereiro de 2009
Ultima resposta 12 de mar. de 2009
Respostas 9
Participantes 3