Ola pessoal tenho um
String valor = JOptionPane.showInputDialog(null, "Digite o valor: ");
que armazena o valor que digitei, agora estou implementando o seguinte
Object[] botoes = {"Sim", "Não"};
int resposta = JOptionPane.showOptionDialog(null,
"Deseja inserir mais um valor na celula?",
"Confirmação", // o título da janela
JOptionPane.DEFAULT_OPTION, JOptionPane.QUESTION_MESSAGE, null,
botoes, botoes[0]);
if (resposta == 0) {
} else if (resposta == 1) {
}
que no caso pergunta quando acabar de inserir o primeiro valor ele receba o segundo valor e armazene tambem mas como fazer isso? armazenar um valor na string eu consigo mas como ir armazenando cada vezes que clicar em SIM ele ir pegando o valor e ir jogando na variavel array?
vlw
samuelM;
Pode fazer um loop com do/while. Veja o exemplo:
[code]import javax.swing.*;
public class TesteDialog{
public static void main(String args[]){
int opcao;
do{
String valor = JOptionPane.showInputDialog(null, "Digite o valor: ");
if(valor==null){
break;
}
//coloque o código para inserir na lista
System.out.println("inserir "+valor);
Object[] botoes = {"Sim", "Não"};
opcao = JOptionPane.showOptionDialog(null,
"Deseja inserir mais um valor na celula?",
"Confirmação", // o título da janela
JOptionPane.DEFAULT_OPTION, JOptionPane.QUESTION_MESSAGE, null,
botoes, botoes[0]);
}while(opcao==0);
}
}[/code]
Mas em que lugar ele unifica os valores que digitei ? e retorna todos valores?
fiz assim
do {
String valor = JOptionPane.showInputDialog(null, "Digite o valor: ");
if (valor == null) {
break;
}
Object[] botoes = {"Sim", "Não"};
opcao = JOptionPane.showOptionDialog(null,
"Deseja inserir mais um valor na celula?",
"Confirmação", // o título da janela
JOptionPane.DEFAULT_OPTION, JOptionPane.QUESTION_MESSAGE, null,
botoes, botoes[0]);
List<String> lista = new ArrayList<String>();
lista.add(valor);
} while (opcao == 0);
Porem precisava criar uma variável com todas as strings capturadas.
Implementei o exemplo armazenando os valores em um ArrayList. No final ele imprime todos os valores.
[code]import javax.swing.;
import java.util.;
public class TesteDialog{
public static void main(String args[]){
int opcao;
List lista = new ArrayList();
do{
String valor = JOptionPane.showInputDialog(null, "Digite o valor: ");
if(valor==null){
break;
}
lista.add(valor);
Object[] botoes = {"Sim", "Não"};
opcao = JOptionPane.showOptionDialog(null,
"Deseja inserir mais um valor na celula?",
"Confirmação", // o título da janela
JOptionPane.DEFAULT_OPTION, JOptionPane.QUESTION_MESSAGE, null,
botoes, botoes[0]);
}while(opcao==0);
Iterator<String> i = lista.iterator();
while(i.hasNext()) System.out.println(i.next());
}
}[/code]
Amigao o que você fez tem sentido porém quase atendeu minha necessidade, ele ta fazendo o laco certinho porem precisava armazenar em uma String todos os valores registrados no showinputdialog, é possível isso?
Vlw por sua atencao
Você quer dizer concatenar todos os valores em uma String?
Se for isso, basta declarar uma String no início, por exemplo:
String resultado = "";
e dentro do laço do/while, usar o método concat(), para concatenar com o valor digitado.
resultado = resultado.concat(valor);
É isso que você quer?
Se não for isso, qual a finalidade dos valores que você quer armazenar em uma String? É uma String mesmo ou uma variável Array? Mas variável Array de quê, de Strings?
Deu certo muito obrigado pco.