вот решение, которое динамически изменяет textFieldRoman при вводе textFieldArabic и наоборот. Надеюсь, это поможет.
Toolkit.getDefaultToolkit().addAWTEventListener( new AWTEventListener() {
@Override
public void eventDispatched( AWTEvent event ) {
switch( event.getID() ) {
case KeyEvent.KEY_RELEASED:
// Your conversions Arabic to Roman depending if textFieldRoman or textFieldArabic has the focus
// best with actionArabic and actionRoman both of type AbstractAction
break;
case FocusEvent.FOCUS_GAINED:
// if textFieldRoman break; otherwise fallthrough - keeps the focus in one of the textfields
case WindowEvent.WINDOW_OPENED:
textFieldArabic.requestFocus(); // start with focused textFieldArabic
break;
}
}
}, AWTEvent.FOCUS_EVENT_MASK | AWTEvent.KEY_EVENT_MASK | AWTEvent.WINDOW_EVENT_MASK );