Pegar valor jtable e mostrar em joptionpane, como proceder?

Pessoal é possível pegar as informações de algumas colunas de jtable e colcoar elas em um painel na hora que a pessoa clicar em salvar?? Tipo, ela clica em salvar, mostra essas informações no painel, ele ele da um “ok”, e depois salva automaticamente?

salvar eu já tenho, no caso só preciso dessas informações no painel.

As informações que estão circuladas são as informações que deverão aparecer no painel com base em suas ligações.

Exemplo: TS2 : 0.20
T90 : 1.20
MV : 52
T5 : 6.00

Sim amigo.

Você deverá acionar o evento de clique em sua table para pegar as informações da coluna

Em modo Design, botão direito na JTable => Eventos => Mouse => MouseClicked

Irá gerar um método automaticamente que será acionado pelo clique do mousa na linha.

Para pegar a linha selecionada

int rowSelected = jTable.getSelectedRow();

Para pegar o valor, neste exemplo em String (pode converter para outro tipo de campo)

String valor = jTable.getValueAt(rowSelected, NUMERO_COLUNA).toString();

Destaquei número coluna como maiusculo para que você perceba que deve colocar o número da coluna qual necessita pegar o valor (0 para coluna 1, 1 para coluna 2 …)

Mais uma vez vc tentando me salvar edumatias, kk… Então Edu, esse método eu já tenho, só que nesse caso eu preciso sem clicar na jtable. a pessoa vai digitar os valores e apos isso vai clicar em salvar… apos clicar no botão, ela vai abrir um joptionpane e jogar essas informações lá. É possível?

Consegue sim.

Pra mostrar a mensagem

		String valor = "";
		valor+= "Teste\n"; //adicione valor 1 aqui
		valor+= "Teste 2\n"; //adicione valor 2 aqui
		valor+= "Teste 3\n"; //adicione valor 3 aqui
		
		int reply = JOptionPane.showConfirmDialog(null, valor, "Teste", JOptionPane.YES_NO_OPTION);
        if (reply == JOptionPane.YES_OPTION) {
          //adiciona na lista
        }else{
        	//não faz nada
        }

Ai pra colocar na lista você deve ter uma for já existente que adiciona na lista, não tem?

Ai se ele clicar em SIM você adiciona na lista

Mas Edu, estou um pouco confuso… pq no meu caso eu tenho q pegar esses valores da jtable como mostra na imagem

Então cara

pra isso que você vai usar o código abaixo

String valor = jTable.getValueAt(NUMERO_LINHA , NUMERO_COLUNA).toString();

Não necessariamente precisa ser clicado na sua jTable para pegar os valores.

Basta usar o código acima e informa a linha e a coluna que você quer. Quando ele clicar em salvar você usa esse código para pegar o valor e jogar no JOptionPane.showConfirmDialog

Hmmm… Entendi, vou fazer o teste e volto c o retorno. Muito obrigado!

1 curtida

Edu, Fiz uns teste aqui, mas surgiu a seguinte duvida…

eu criei o string valor com base na linha e coluna, exemplo

  String valor = CadoperacaoTabela.getValueAt(1, 2).toString();
  valor+= CadoperacaoTabela.getValueAt(1, 3).toString();

// valor+= “Teste 2\n”; //adicione valor 2 aqui
// valor+= “Teste 3\n”; //adicione valor 3 aqui

  int reply = JOptionPane.showConfirmDialog(null, valor, "Teste", JOptionPane.YES_NO_OPTION);
    if (reply == JOptionPane.YES_OPTION) {
      //adiciona na lista
    }else{
    	//não faz nada
    } 

Mas eu preciso de outras linhas e outras colunas, pois nessa tela vai vim 9 valores de 9 linhas e 9 colunas.

Resolvi assim Edu.

		String valor = CadoperacaoTabela.getValueAt(1, 2).toString();
                String valor2 = CadoperacaoTabela.getValueAt(2, 2).toString();
		valor+=" "+ ":"+ " "+CadoperacaoTabela.getValueAt(1, 3).toString();
		valor2+=" "+ ":"+ " "+CadoperacaoTabela.getValueAt(2, 3).toString();
//		valor+= "Teste 3\n"; //adicione valor 3 aqui
		
		int reply = JOptionPane.showConfirmDialog(null, valor+"\n"+valor2, "Teste", JOptionPane.YES_NO_OPTION);
        if (reply == JOptionPane.YES_OPTION) {
          //adiciona na lista
        }else{
        	//não faz nada
        }

Obrigado mais 1 vez. Só mais uma duvida, kkk… e possível mudar a cor dessas letras?

Do texto apresentado no JOption?

isso

Cara,

Só se realmente precisar.

Veja

entendi. valew

Eduardo, estou tendo um problema, será q vc pode me ajudar? com esse código q vc me passou, se tiver uma das colunas em “null”, ele n funciona, tem como vc me ajudar?

Alguém com um vasto conhecimento poderia me dar uma ajuda nessa condição? Grato!

Faça um programa que receba um número com casa decimal, calcule e
mostre:
• a parte inteira do número;
• a parte fracionária do número.
como eu faço isso??