JOptionPane.showinputdialog

e ai galera blza?

to usando um JOptionPane.showInputDialog pra pegar um texto digitado.

to precisando saber se tem jeito de saber se o usuário clicou no botao OK ou no Cancel.

desde jah agradeço atenção de vcs…

flws

Se o usuário pressionar cancel o retorno será null.

No ok, sempre alguma String é retornada, nem que seja vazia. Para maiores informações, veja o seguinte Javadoc:

http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JOptionPane.html#showInputDialog(java.awt.Component,%20java.lang.Object,%20java.lang.String,%20int,%20javax.swing.Icon,%20java.lang.Object[],%20java.lang.Object)

Desculpe a pergunta, mas para que você quer saber se o usuário apertou em ok ou em cancel?! Se for para validação você pode fazer assim

		String t = JOptionPane.showInputDialog("Tá bom?"); 
		System.out.println(t == null || "".equals(t) );

Uma curiosidade, no Java 6 existe o método isEmpty() na classe String. Uma boa substituição para “”.equals(t);

O método isEmpty() faz o mesmo que t.length() == 0, que é um pouco mais eficiente do que usar o equals também.

Demorou para sair isso, como ninguém tinha feito isso antes :slight_smile:

[quote=thiago.correa]Desculpe a pergunta, mas para que você quer saber se o usuário apertou em ok ou em cancel?! Se for para validação você pode fazer assim

String t = JOptionPane.showInputDialog("Tá bom?"); System.out.println(t == null || "".equals(t) ); [/quote]

era pra isso mesmo!

vlw pelas dicas galera

flws

Pessoal, preciso de uma ajuda…estou tentando colocar números separados de vírgula neste campo:

p.i = Double.parseDouble(JOptionPane.showInputDialog(“Digite a taxa a ser aplicada”));

o objeto “i” é um double…

mas retorna erro…que “caca” estou fazendo?
abraço

Não utilize vírgula, e sim o ponto. Creio que isso resolva! =)

Existe alguma forma de fazer ele aceitar tanto a vírgula quanto o ponto?

Pessoal, gostaria de criar uma tela em que ela me apresentasse valores impressos, por exemplo, possuo valores diversos de um cálculo, e gostaria q quando eu imprimisse, aparecesse em uma tela separada…como poderia fazer isso?
obrigado

tenta tratar assim depois que pegar a “variavel”.replaceAll(",", “.”)

no caso seja um JTextField

String precos = ( JTextField.getText().replaceAll(",", “.”);
JTextField.setText(precos);

UNIÂO JAVA;