java - 来自另一个类的 JOptionPane 变量出现问题

标签 java joptionpane

我使用 JOptionPane 设置了一些简单的代码,以便在单击按钮时打开一个简单的 showMessageDialog。一切都很好。现在,我通过从另一个类检索双变量来使事情变得复杂。我尝试了一些不同的方法,但仍然收到“不适用于参数”错误。我尝试阅读完整的 Oracle 文档并观看一些 YouTube 视频,但仍然很困难。

三个类,一个用于 GUI,一个用于事件处理,一个用于从中检索数字。

以下是代码摘录:

public class TEST_GUI {

   private JButton testButton;

   public void GUI {
      //construction of the GUI occurs here
      testButton = new JButton("Tester");
   }



protected class EventHandler implements ActionListener {

    public void actionPerformed(ActionEvent testButtonClicked) {        

        if (testButtonClicked.getSource() == testButton){
            TesterClass tester = new TesterClass();
            JOptionPane.showMessageDialog(null,tester.getRetrievedNumber());
        }
    }
}



public class TesterClass {

    private double retrievedNumber;

    public TesterClass(){
        retrievedNumber = 1000.00;
    }

    public double getRetrievedNumber() {
        return this.retrievedNumber;
    }
}

使用通用(null,“message”)参数一切正常,但它不会接受来自其他类的双变量。我将不胜感激任何指导。谢谢!

最佳答案

替换

tester.getRetrievedNumber()

String.valueOf(tester.getRetrievedNumber());
<小时/>

这就是说

public static void showMessageDialog(Component parentComponent, Object message)

因为我们可以看到showMessageDialog接受一个对象作为第二个参数,AutoBoxing应该在这里工作,并且您的 double 被转换为 Double 对象。

Eclipse 中,使用原语作为参数可以正常工作。

也许问题出在其他地方,但我找不到它。也许有更多信息...

关于java - 来自另一个类的 JOptionPane 变量出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33712090/

相关文章:

java - 如何更改 JOptionPane 主题

java - 如何在用户单击 Java Swing 应用程序上的“关闭”时启动弹出窗口

java - 编辑条目后 ListView 滚动到顶部

java - Android Eclipse 多个 Dex 文件错误

java - 如何计算每个复选框中的所有真值和假值

java - exec-maven-plugin exec :java failing: Cannot assign configuration values to array of type java. lang.String

java - 有没有办法为 JOptionPane.showOptionDialog 设置布局?

java - 为什么 JOptionPane 不接受这个字符串?

java - 基于下拉列表选择的 If 语句

java - 如何从目录中获取特定数量的文件?