我面临的问题很少......
我正在尝试使用Java开发基本的GUI计算器。我使用JTextArea
来输入数字并仅执行所有计算。我希望文本区域也显示最终结果,但基本问题是当我按加号按钮时。它显示错误,但没有显示任何结果。我知道问题出在textarea.settext("")
,但我不知道如何克服它。
我指定下面代码的重要部分而不是整个代码。
到目前为止,这是我的代码:
JTextArea ta = new JTextArea();
ta.setFont(new Font("Monospaced", Font.BOLD, 20));
ta.setBounds(10, 11, 319, 74);
contentPane.add(ta);
JButton button_14 = new JButton("1 ");
button_14.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
ta.append("1");
}
JButton button_17 = new JButton("+");
button_17.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
num1=Float.parseFloat(ta.getText());
ta.setText("");
ta.setText(ta.getText());
num2=Float.parseFloat(ta.getText());
ans=num1+num2;
}
JButton button_11 = new JButton("=");
button_11.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
ta.setText(String.valueOf(ans));
}
答案 0 :(得分:0)
问题所在,你说得对:
ta.setText("");
ta.setText(ta.getText());
num2=Float.parseFloat(ta.getText());
你正在做的是将文本设置为空,然后再将文本设置为空(因为文本现在没什么)。
你试图从零开始做一个数字。
没有任何意义:“”
将文本保存在变量中,然后将其设置为空,如果这是您要完成的操作或未将其设置为“”。