62,616
社区成员
发帖
与我相关
我的任务
分享
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
public class SynchroTextFeild extends JFrame implements DocumentListener
{
JTextField textField1 = null;
JTextField textField2 = null;
public SynchroTextFeild()
{
super("同步的文本框");
setLayout(new BoxLayout(getContentPane(),BoxLayout.Y_AXIS));
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(300, 200);
init();
setLocationRelativeTo(null);//让窗体在屏幕中间显示
setVisible(true);
}
private void init()
{
textField1 = new JTextField(20);
textField2 = new JTextField(20);
Box b =Box.createHorizontalBox();
b.add(new JLabel("文本框1:"));
b.add(textField1);
getContentPane().add(b);
b = Box.createHorizontalBox();
b.add(new JLabel("文本框2:"));
b.add(textField2);
getContentPane().add(b);
//注册文档侦听器
textField1.getDocument().addDocumentListener(this);
}
private void doSynchro()
{
textField2.setText(textField1.getText());
}
public void changedUpdate(DocumentEvent e)
{
//do nothing
}
public void insertUpdate(DocumentEvent e)
{
doSynchro();
}
public void removeUpdate(DocumentEvent e)
{
doSynchro();
}
public static void main(String[] args)
{
new SynchroTextFeild();
}
}