问题描述
我正在编写代码,将两个文本字段中的2个数字相加,并将总和显示在第三个文本字段中。但是,当我将第三个文本字段设置为显示Z值(即总和)时,出现错误“找不到符号”。我在做什么错了?
import javax.swing.*;
import java.awt.event.*;
public class A implements ActionListener{
JTextField tf1,tf2,tf3;
JButton b1;
A(){
JFrame f= new JFrame();
JLabel myLabel= new JLabel("Enter First Value");
myLabel.setBounds(50,50,150,20);
tf1=new JTextField();
tf1.setBounds(50,75,250,20);
JLabel mysecondLabel= new JLabel("Enter Second Value");
mysecondLabel.setBounds(50,125,20);
tf2=new JTextField();
tf2.setBounds(50,20);
tf3=new JTextField();
tf3.setBounds(160,225,140,20);
tf3.setEditable(false);
b1=new JButton("Sum");
b1.setBounds(50,95,20);
b1.addActionListener(this);
f.add(tf1);f.add(myLabel);f.add(tf2);f.add(mysecondLabel);f.add(tf3);f.add(b1);
f.setSize(300,300);
f.setLayout(null);
f.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
String s1=tf1.getText();
String s2=tf2.getText();
if(e.getSource()!=b1){
return;
}
int x = Integer.parseInt(s1);
int y = Integer.parseInt(s2);
String result = B.Z;
tf3.setText(result);
} public static void main(String[] args) {
new A();
}
}
import javax.swing.*;
import java.awt.event.*;
public class B {
public static int myMethod(int x,int y) {
int Z;
Z = x + y;
return Z;
}
}
解决方法
您的B
类没有名为Z
的静态字段,您可以通过调用B.Z
来访问该字段。您没有呼叫myMethod(x,y);
。尝试String result = String.valueOf(B.myMethod(x,y));
,看看是否可行。