【问题标题】:Return a value after disposeing popup jframe处理弹出 jframe 后返回一个值
【发布时间】:2013-12-12 12:58:53
【问题描述】:

我是 Java 新手,我有一个主框架,我正在通过它初始化另一个子框架,然后我想仅在子框架处理后返回字符串值

问题领域

1- 当子框架调用特定事件时,将字符串的值返回给主框架。

可能是我没有正确处理 setter 和 getter 方法。

儿童班

      Private String[] cmd;
      public String[] cmnd (){
       ArrayList<String> vals=new ArrayList<String>();
        vals.add("C:\\");   
      vals.add("--version");   
      cmd= vals.toArray(new String[vals.size()]);            
       return cmd;
      }

调用此事件后必须返回字符串值

   private void runActionPerformed(java.awt.event.ActionEventevt){                                    

     cmnd();   /// here i want program to return value
     mcrl2Transform.this.dispose();
} 

需要这个字符串的类

    childframe get=new childframe();
     get.setVisible(true);   
     String[] cmds=get.cmnd();
    if(commands != null){
      for(String s : cmd)
       System.out.println(s);}

【问题讨论】:

  • 您应该发布SSCCE 以获得更好的帮助,或者至少是您想要完成的更清晰的示例
  • 实际上事件是关闭私有的并且不返回任何值 - 我不能在 main 中使用它,因为我在这里使用这个框架方法做了一些其他的字符串操作。

标签: java swing methods return-value


【解决方案1】:

你需要一个主框架类的回调方法,如下所示:

private void runActionPerformed(java.awt.event.ActionEventevt){                                    

 String[] value=cmnd();   /// here i want program to return value
 mainFrame.setCmnd(value);
 mcrl2Transform.this.dispose();
 }

或者您需要将值缓存在保存您的 String[] 的成员变量中。

【讨论】:

  • 这是什么 setCmnd(value) 方法我在大型机中没有这种类型的方法。我调用的子类的对象位于按钮事件中,如下所示。私人无效 lcpButtonActionPerformed(java.awt.event.ActionEvent evt) { childframe get=new childframe(); get.setVisible(true);字符串[] cmds=get.Cmd(); if(commands != null){ for(String s : cmnd) System.out.println(s);}
  • 能否请您给我一些示例代码,该方法在 main 中接收集合值。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多