import java.awt.*;
import java.awt.event.*;
public class TextWatcher extends java.applet.Applet {
TextArea area1, area2;
public void init() {
setLayout( new GridLayout(2,1) );
add( area1 = new TextArea() );
add( area2 = new TextArea() );
area1.addTextListener ( new TextSyncAdapter( area2 ));
area2.addTextListener ( new TextSyncAdapter( area1 ));
}
class TextSyncAdapter implements TextListener {
TextArea targetArea;
TextSyncAdapter( TextArea targetArea ) {
this.targetArea = targetArea;
}
public void textValueChanged(TextEvent e) {
TextArea sourceArea = (TextArea)e.getSource();
if ( ! targetArea.getText().equals( sourceArea.getText() ) )
targetArea.setText( sourceArea.getText() );
}
}
}
|