展开全部
因为你最大化applet等于重新布置applet中的组件,而validate();语句有相同的32313133353236313431303231363533e78988e69d8331333361303566作用。
所以在actionPerformed函数中,注释掉repaint();和p1.setVisible(true);语句,加上
validate();语句就行了。
完整的Java语言程序如下:import java.applet.Applet;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Label;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class kaoshi2 extends Applet implements ActionListener{
Button b1 = new Button("添加社员");
Button b5 = new Button("添加信息");
Panel pall = new Panel(new BorderLayout());
Panel p0 = new Panel();
Panel p1 = new Panel();
Label l1 = new Label("社员代码:");
Label l2 = new Label("社员名称:");
Label l3 = new Label("社员生日:");
TextField tf1 = new TextField(4);
TextField tf2 = new TextField(4);
TextField tf3 = new TextField(4);
public void init(){
b1.addActionListener(this);
p0.add(b1);
p1.add(l1);
p1.add(tf1);
p1.add(l2);
p1.add(tf2);
p1.add(l3);
p1.add(tf3);
p1.add(b5);
pall.add(p0,BorderLayout.NORTH);
this.add(pall);
this.setVisible(true);
}
public void actionPerformed(ActionEvent aa1) {
String ss1 = aa1.getActionCommand();
if(ss1=="添加社员"){
//repaint();
pall.add(p1,BorderLayout.SOUTH);
//p1.setVisible(true);
validate();//这句将重新布置applet中的组件
}
}
}