我有一个frame和一个dialog,在frame中有一个按钮点击后打开dialog,dialog中是对某个属性的设置,设置完后,确定关闭,然后我要在frame中获得这个设置的值,怎么获得?如果直接在创建这个dialog并setVisible(true)后,就写代码去获得,获得的是空的,因为它不会等到dialog消失之后才获得,怎样才能让其等到dialog关闭后才获得该值?

解决方案 »

  1.   

    在new dialog的时候,把frame传递进去,作为dialog的一个属性。
    然后在dialog关闭之前往frame里写。
      

  2.   

    给你一个例子
     username = JOptionPane.showInputDialog(this, "请输入用户名");
     String pwd = JOptionPane.showInputDialog(this, "请输入密码");
    这段代码是写在frame中的,username和pwd是定义咋frame中的字段,当弹出输入对话框时,你所输的内容就直接赋值给username和pwd了
      

  3.   

    还有没有其他办法了?我只记得以前写过一个,是在dialog那写一个super什么的,就能让frame等待dialog关闭后再继续往下运行