在按钮的JPanel中添加一个JTextField域.如下示例:
import javax.swing.*;
public class Test extends JFrame
{
public Test(){
this.setTitle("Test Frame");
this.setSize(500,370);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
TextFieldPanel tp = new TextFieldPanel();
this.add(tp);
ButtonPanel bp = new ButtonPanel(tp.getField());
this.add(bp,java.awt.BorderLayout.SOUTH);
}
public static void main(String args[])
{
Test t = new Test();
t.setVisible(true);
}
}
class TextFieldPanel extends JPanel
{
JTextField field;
public TextFieldPanel()
{
field = new JTextField(20);
add(field);
}
JTextField getField(){
return field;
}
}
class ButtonPanel extends JPanel
{
JButton btn;
JTextField field;
public ButtonPanel(JTextField field)
{
this.field = field;
btn = new JButton("Clear");
btn.addActionListener(new java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent e){
ButtonPanel.this.field.setText("");
}
});
add(btn);
}
}
在事件方法中写:
text.setText("");
就会清空了