Java 如何从JTextField中逐个获取2个不同的整数值
我正在用swing用java准备一个计算器,我有几个数字按钮和操作按钮,假设当我按7时,7在TextField上打印,然后我按“*”,结果7被删除,再次按3,3被打印,我按“=”,然后我的答案是49而不是21 这是我的密码:Java 如何从JTextField中逐个获取2个不同的整数值,java,swing,jtextfield,Java,Swing,Jtextfield,我正在用swing用java准备一个计算器,我有几个数字按钮和操作按钮,假设当我按7时,7在TextField上打印,然后我按“*”,结果7被删除,再次按3,3被打印,我按“=”,然后我的答案是49而不是21 这是我的密码: //ob16 is a button for '*'operation & adding an action// ob16.addActionListener(new ActionListener() { public void actionPerforme
//ob16 is a button for '*'operation & adding an action//
ob16.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// for getting the 1st integer from textfield //
String v = textField.getText();
// changing the type for performing '*' operation//
final int y = Integer.parseInt(v);
// defining the class's object which is having method asap1()//
asap k = new asap();
k.asap1();
// for getting the 2nd integer from Text field//
String l = textField.getText();
final int j = Integer.parseInt(y);
//ob22 is a '=' button & adding an event for it//
ob22.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int m = y * j;
System.out.println("" + m);
textField.setText("" + m);
}
});
}
});
ob.setVisible(true);// ob is a frame//
…
class asap extends mini {
public void asap1() {
//ob2 is a Backspace button in my calculator & adding an event for it//
ob2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textField.setText(null);
}
});
}
}
我知道为什么我得到了错误的答案,但我想知道执行此操作的正确步骤。您正在另一个
ActionListener
中添加一个ActionListener
,因此每次调用+按钮的操作时,它都会为=按钮创建一个新的操作侦听器。这将导致=按钮具有多个操作侦听器。正确粘贴代码。完全是梅西,我不知道如何从jtextfield中获取两个不同的值,我正在准备计算器,我不能执行乘法运算。我想了解的是,让我们假设我们按下任何一个数字。从计算器中,它出现在textfield上,然后我们按下“*”按钮,我们以前的数字消失,然后我们按下其他数字,它再次出现在jtextfield上,我们按下“=”键,然后我们的ans(2个产品)应该会出现在屏幕上,有人能指导怎么做吗,我是swing新手。你为什么不看看?它提供了一个工作示例,正如您所描述的。非常感谢您,它真的帮助了我