Java Swing/JFrame侦听器
我对Java还不熟悉,我正在努力做一个新的尝试 简单的初学者程序,接受用户 温度输入和转换后的输出 升到摄氏度。我想我有点不对劲 但是与监听器一起,因为它提供了一个输出,但是 总是零。我不确定我做错了什么 与听众和动作事件 我想我和听众之间有点不对劲 首先要做的是在侦听器代码中添加一个System.out.println(…),以便查看是否调用了侦听器 假设调用了它,我猜问题是:Java Swing/JFrame侦听器,java,swing,jframe,listener,actionevent,Java,Swing,Jframe,Listener,Actionevent,我对Java还不熟悉,我正在努力做一个新的尝试 简单的初学者程序,接受用户 温度输入和转换后的输出 升到摄氏度。我想我有点不对劲 但是与监听器一起,因为它提供了一个输出,但是 总是零。我不确定我做错了什么 与听众和动作事件 我想我和听众之间有点不对劲 首先要做的是在侦听器代码中添加一个System.out.println(…),以便查看是否调用了侦听器 假设调用了它,我猜问题是: results = 5/9 * (F - 32); 您正在进行整数除法,因此5/9始终为0 一种修复方法是使用如
results = 5/9 * (F - 32);
您正在进行整数除法,因此5/9始终为0
一种修复方法是使用如下内容:
results = (F - 32) * 5 / 9;
此外,文本字段上的ActionListener仅在按下Enter键时调用
您可能想考虑使用<代码>文档监听器< /代码>。无论何时在文本字段中添加或删除文本,都会调用此函数
有关更多信息和示例,请阅读上Swing教程的部分 我想我和听众之间有点不对劲 首先要做的是在侦听器代码中添加一个System.out.println(…),以便查看是否调用了侦听器 假设调用了它,我猜问题是:results = 5/9 * (F - 32);
您正在进行整数除法,因此5/9始终为0
一种修复方法是使用如下内容:
results = (F - 32) * 5 / 9;
此外,文本字段上的ActionListener仅在按下Enter键时调用
您可能想考虑使用<代码>文档监听器< /代码>。无论何时在文本字段中添加或删除文本,都会调用此函数
有关更多信息和示例,请阅读上Swing教程的部分。Ah。我完全错过了。谢谢,正是逻辑让它显示0。@MichaelFogarty,这就是为什么应该使用显示计算值之类的基本调试。这有助于你缩小问题的范围,而不是猜测。我会尽快接受答案。谢谢啊。我完全错过了。谢谢,正是逻辑让它显示0。@MichaelFogarty,这就是为什么应该使用显示计算值之类的基本调试。这有助于你缩小问题的范围,而不是猜测。我会尽快接受答案。谢谢