Java:从另一个类获取返回值

时间:2013-12-19 09:37:17

标签: java class return

我只想从其他类

获取在我的txtfield中输入的值
public class MyCostumizedDialog{
int x = 0 ;

public void showFrameDialog(){
   // Here are my components...
    txt1 = new Jtextfields;...//my jtxtfield
    .......
    btn1.addactionlister(....){
         x = Integer.parseInt(txt1.gettext());//get string from jtxtfld and parse to int
   }
public int getNumber(){
    return x;
}

}

然后我想从MyCostumizedDialog中获取从jtxtfild输入的值,如下所示

public class OtherClass{

    public void frame(){

btn2.addactionlistener(......){
      MyCostumizedDialog mcd = new MyCostumizedDialog();
      mcd .showFrameDialog();
      Double x= mcd.getNumber();
      txtNumber.setText("P "+x);
     }
    }
}

txtnumber总是显示来自MycostumeDialog的x的初始值,请帮帮我

2 个答案:

答案 0 :(得分:1)

在设置值之前,你试图获取值,换句话说,一旦你点击btn1,你的x就会得到值,但是你在点击那个按钮之前试图得到x的值。

mcd .showFrameDialog();
Double x= mcd.getNumber();

在为变量设置值后,您应该致电mcd.getNumber();

答案 1 :(得分:0)

由于每次按下btn2时总是实例化MyCostumizedDialog的新实例,因此你得到MyCostumizedDialog的初始值,因为没有人按下btn1来设置新设置值的实例。

如果btn1需要用于其他目的,我建议只添加另一个方法来完成与btn1动作监听器完全相同的操作,然后在btn2动作监听器中调用该方法。