繁体   English   中英

在侦听器中使用另一个文本字段

[英]take another textfield while in listener

在此处输入图片说明

我没有为这个计算器使用2个标签。我可以计算2个标签的问题。但是当我尝试使用1个标签时,我不能。确切的问题就在这里。

private void jButton9MouseClicked(java.awt.event.MouseEvent evt) {                                      
        a=Integer.valueOf(jTextField1.getText());
        jTextField1.setText("");
        b=Integer.valueOf(jTextField1.getText());
        c=a+b;
    }   

我从textfield取了一个数字到'a'参数。但是我想从textfield再取一个文本。但是在jTextField1.setText("");之后jTextField1.setText(""); 我不能b=Integer.valueOf(jTextField1.getText()) ; 行的。 我怎样才能解决这个问题? 寻求帮助

使用public getset方法将jTextField变量设为私有全局变量。

另外,请勿对按钮使用“ Mouse Event Listener ”,而应使用Action Listener

您的操作顺序也是错误的。 当按“ =”时,将计算您的总数。

您在文本字段中具有以下内容

3

您按9号按钮,然后做3 + 3 = 6就可以了,我想这不是您想要的。

那不是计算器的工作方式。

  • 步骤1)输入一个值。
  • 步骤2)输入符号
  • 步骤3)输入新值,检查文本字段中是否有符号。 是这样,得到总数。

这就是它的工作方式,但这本身就是错误的逻辑。

正确的方法是:

  • 步骤1)按计算器上除0以外的任何数字或符号,直到满意为止,然后将其附加到文本字段。
  • 步骤2)按=号
  • 步骤3)从文本字段中获取整个字符串并进行解析,在try catch中检查它是否是正确的数学运算,然后让Java对其进行评估。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM