Ol� J�der,
 
Olhe o exemplo em anexo com uso de JDialog e JOptionPane.
 
Lincolm Ferreira de Aguiar
WebMaster - QueroProgramar
[EMAIL PROTECTED]
 
----- Original Message -----
Sent: Monday, January 28, 2002 1:24 PM
Subject: Re: [java-list] Dificuldade em um projeto !!!

J�der,

Se n�o me engano a primeira edi��o do Core Java (Cornell e Horstmann) tem um exemplo semelhante ao que vc deseja fazer.
Experimente.
Sucesso.

Joel

Jader Tenguam wrote:

Ola Pessoal, Alguem poderia me dar um toque, sou novo em java. Estou estudando e desenvolvendo com o VisualAge for JAVA um sisteminha em Swing.Meu problema eh conseguir realizar uma chamada de um frame para um dialog e este repassar um valor para o frame. Vamos detalhar um poquinho mais, estou tentando fazer o seguinte, tenho um frame que quando pressionado um botao ele instancia um objeto jdialog com um botao sim e outro nao. Quando Clicado SIM, este alimenta um objeto String do Dialog. Tenho um outro metodo para "pegar" este valor la do Frame, mas qdo eu chamo o metodo "pegar", ele me retorna null, pois ele ainda nao executou o "clique" do botao. Como eu poderia fazer uma janela ser dependente de outra ?, Ou seja, enquanto uma estiver ativa, a outra nao pode ter acao nenhuma, nem foco?E como eu poderia fazer meu codigo la no frame pegar no momento certo (Clique do botao) as informacoes? Atenciosamente...Jader Tenguam...

import java.awt.*;
import java.awt.event.*;

import java.util.*;

import javax.swing.*;


public class UsandoJDialog extends JFrame {

   JButton mostrar;
   JButton pergunta;
   JButton fechar;

   JDialog dialogo;

   public UsandoJDialog(){

      int larguraDialogo = 100;
      int alturaDialogo = 65;

      int larguraTela = 300;
      int alturaTela = 300;

      dialogo = new JDialog(this);
      dialogo.setModal(true); // Define a caixa de di�logo modal, o usu�rio n�o pode dar foco na janela de baixo enquanto n�o fechar a caixa de di�logo.

      mostrar = new JButton("Mostrar");
      mostrar.addActionListener(new ActionListener(){

         public void actionPerformed(ActionEvent e){

            dialogo.setVisible(true);

         }

      });

      pergunta = new JButton("Perguntar");
      pergunta.addActionListener(new ActionListener(){

         public void actionPerformed(ActionEvent e){

            Object[] options = { "Sim", "N�o" };
            int opc = JOptionPane.showOptionDialog(null, "Informe aqui o texto da pergunta", "T�tulo do Aviso", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[0]);

            String escolha = (opc == JOptionPane.YES_OPTION) ? "Escolheu Sim" : "Escolheu n�o";

            JOptionPane.showMessageDialog(null, escolha, "Aviso", JOptionPane.WARNING_MESSAGE);

            dialogo.setVisible(false);

         }

      });


      fechar = new JButton("Fechar");
      fechar.addActionListener(new ActionListener(){

         public void actionPerformed(ActionEvent e){

            dialogo.setVisible(false);

         }

      });

      dialogo.getContentPane().setLayout(new FlowLayout());
      dialogo.getContentPane().add(fechar);
      dialogo.setSize(larguraDialogo, alturaDialogo);

      Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();

      //Centranlizando a caixa de di�logo
      int posX = (int) (Math.ceil((dim.width / 2) - (larguraDialogo / 2)));
      int posY = (int) (Math.ceil((dim.height / 2) - (alturaDialogo / 2)));
      dialogo.setLocation(posX, posY);

      getContentPane().setLayout(new FlowLayout());
      getContentPane().add(mostrar);
      getContentPane().add(pergunta);

      //Centranlizando a janela
      posX = (int) (Math.ceil((dim.width / 2) - (larguraTela / 2)));
      posY = (int) (Math.ceil((dim.height / 2) - (alturaTela / 2)));

      setLocation(posX, posY);

      setSize(larguraTela, alturaTela);
      setTitle("Usando JDialog Modal");
      setVisible(true);

   }

   public static void main(String args[]){

      UsandoJDialog usnjd = new UsandoJDialog();

      WindowListener wl = new WindowAdapter(){

         public void windowClosing(WindowEvent e){

            System.exit(0);

         }

      };

      usnjd.addWindowListener(wl);

   }

}
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------

Responder a