Ola pessoal
Eu criei um JDialog e nele tem um botao
eu gostaria que quando eu pressionasse no botao , a janela terminasse e retonasse um inteiro .
Eu gostaria de fazer uma janela que funcionasse tal como fonciona o JOptionPane.showConfirmDialog().
No metodo actionPerformed do botao eu pus o operador return de modo a retornar um inteiro, mas ao compilar deu erro pelo fato desse metodo ser void
Agradeço desd ja a todos que me poderem ajudar 
Posta teu codigo ai…
Mas te adiantando, cria um metodo ou uma variavel global para guardar o valor deste teu inteiro.
abcs
ai vai o codigo
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JanelaDialogo extends JDialog
{
private JButton b;
private int cont = 0;
private boolean escolha = false ;
private JFrame frame;
public JanelaDialogo( JFrame f )
{
super( f,"Janela" );
b = new JButton( "Ok" );
b.addActionListener( new ActionListener()
{
public void actionPerformed( ActionEvent e )
{
/*
*Quando pressionar o botao
*o valor de cont passa a ser 40
**/
cont = 40;
dispose();//Termina a janela
}
} );
this.add( b );
this.setSize( 400, 451 );
this.setLocationRelativeTo( null );
this.setDefaultCloseOperation( WindowConstants.HIDE_ON_CLOSE );
this.setVisible( true );
}
/*
*Este metodo ira retornar o valor de cont
*Devaria retornar o valor de cont depois de pressionar o botao
*o que nao acontece
**/
public int getInteiro()
{
return cont;
}
}
class TestJanela extends JFrame
{
public TestJanela()
{
int valor;// Variavel que vai receber o valor da janela depois de pressionar o botao
JanelaDialogo a = new JanelaDialogo( this ); //Instanciaçao da janela
valor = a.getInteiro();//devaria supostamente retornar 40
System.out.println( valor );// Mas o valor que aparece é 0( zero )
this.setSize( 600, 500 );
this.setLocationRelativeTo( null );
this.setDefaultCloseOperation( 3 );
this.setVisible( true );
}
public static void main (String[] args)
{
new TestJanela();
}
}
[quote=“yb_theone”]
JanelaDialogo a = new JanelaDialogo( this ); //Instanciaçao da janela
valor = a.getInteiro();//devaria supostamente retornar 40
System.out.println( valor );// Mas o valor que aparece é 0( zero )
[/quote]
Ola… no codigo acima vc acabou de instanciar a classe “JanelaDialogo” e entao ja tenta pegar o inteiro pelo metodo “getInteiro()”. O que acontece e que o botao nao foi pressionado ainda e esse metodo vai retornar 0 (valor default que vc mesmo atribuiu). Para retornar o inteiro vc tem que ter certeza que o botao tenha sido pressionado. Existe uma implementação disso que vc esta querendo aqui. Até mais.
Valew pela ajuda, mto obrigado :lol: :lol: :lol: