Così va un po' meglio!
KeyListener k = new KeyAdapter() {
public void keyTyped(KeyEvent e) {
Object source = e.getSource();
System.out.println("Premuto un tasto su" + source);
if ((source == s1) || (source == s2)) {
try {
s1.setText(s1.getText().substring(0, 5));
s2.setText(s2.getText().substring(0, 5));
} catch (StringIndexOutOfBoundsException ex) {
}
}
}
};
nemmeno di tanto perchè almeno funziona ma aggiunge in fondo alla stringa l'ultimo carattere digitato, sempre nella stessa posizione!
Nota devi aggiungerlo così:
s1.addKeyListener(k);
s2.addKeyListener(k);
Modificalo se riesci!