P4.add(Badd); P4.add(Bavg); Badd.addActionListener(this); Bavg.addActionListener(this); add(P1); add(P2); add(P3); add(P4); // } int sum=0; public void actionPerformed(ActionEvent e) {
if(e.getSource()==Badd){ try{ int num1=Integer.parseInt(txtyw.getText().trim()); int num2=Integer.parseInt(txtsx.getText().trim()); int num3=Integer.parseInt(txtyy.getText().trim()); int num4=Integer.parseInt(txtls.getText().trim()); int num5=Integer.parseInt(txtdl.getText().trim()); sum=num1+num2+num3+num4+num5; Laddss.setText(""+sum); }catch(Exception en){ Laddss.setText("wrong!"); } }else if(e.getSource()==Bavg) Lavgss.setText(""+sum/5); } public void paint(Graphics g) { g.drawString("",20,20); } }
实现他,可以在里面通过 ae.getSource()方法获得事件来源对象,如果是按钮,就加所有的内容并赋值。给按钮添加监听器Badd.addActionListener(this)
public void actionPerformed(ActionEvent e)
方法
public void actionPerformed(ActionEvent e){}
所以编译不通过。没有
Badd.addActionListener(this);
Bavg.addActionListener(this);
所以即使编译通过了也不会有反应。另,Badd、Bavg这些东西最好不要用大写开头。
import java.awt.*;
import java.applet.*;
import java.awt.event.*;public class Grade extends Applet implements ActionListener
{
//Frame
Frame f = new Frame();
BorderLayout br = new BorderLayout();
Panel P1 = new Panel();
Panel P2 = new Panel();
Panel P3 = new Panel();
Panel P4 = new Panel(); Label Ltit = new Label("学生成绩表");
Label Lyw = new Label("语文");
Label Lsx = new Label("数学");
Label Lls = new Label("历史");
Label Ldl = new Label("地理");
Label Lyy = new Label("英语"); Label Ladd = new Label("总分");
Label Lavg = new Label("平均分");
Label Laddss = new Label("_____");
Label Lavgss = new Label("_____"); TextField txtyw = new TextField("",3);
TextField txtsx = new TextField("",3);
TextField txtyy = new TextField("",3);
TextField txtls = new TextField("",3);
TextField txtdl = new TextField("",3); Button Badd = new Button("计算总分");
Button Bavg = new Button("计算平均分"); public void init()
{
f.setLayout(br);
P1.add(Ltit);
P1.setLayout(new FlowLayout());
P2.add(Lyw);
P2.add(txtyw);
P2.add(Lsx);
P2.add(txtsx);
P2.add(Lyy);
P2.add(txtyy);
P2.add(Lls);
P2.add(txtls);
P2.add(Ldl);
P2.add(txtdl); P3.add(Ladd);
P3.add(Laddss);
P3.add(Lavg);
P3.add(Lavgss);
P4.add(Badd);
P4.add(Bavg);
Badd.addActionListener(this);
Bavg.addActionListener(this);
add(P1);
add(P2);
add(P3);
add(P4);
//
}
int sum=0;
public void actionPerformed(ActionEvent e) {
if(e.getSource()==Badd){
try{
int num1=Integer.parseInt(txtyw.getText().trim());
int num2=Integer.parseInt(txtsx.getText().trim());
int num3=Integer.parseInt(txtyy.getText().trim());
int num4=Integer.parseInt(txtls.getText().trim());
int num5=Integer.parseInt(txtdl.getText().trim());
sum=num1+num2+num3+num4+num5;
Laddss.setText(""+sum);
}catch(Exception en){
Laddss.setText("wrong!");
}
}else if(e.getSource()==Bavg)
Lavgss.setText(""+sum/5);
} public void paint(Graphics g)
{
g.drawString("",20,20);
}
}