Se si vuole fare in modo che in una JTextArea:
- CTRL+INVIO inserisca un newline
- INVIO da solo faccia "qualcosa" di particolare
si può fare così:
codice:
import java.awt.event.*;
import javax.swing.*;
import javax.swing.text.*;
....
Keymap keyMap = textArea.getKeymap ();
keyMap.addActionForKeyStroke (KeyStroke.getKeyStroke (KeyEvent.VK_ENTER, InputEvent.CTRL_DOWN_MASK),
new DefaultEditorKit.InsertBreakAction ());
keyMap.addActionForKeyStroke (KeyStroke.getKeyStroke (KeyEvent.VK_ENTER, 0),
new EnterAction ());
....
private class EnterAction extends AbstractAction
{
public void actionPerformed (ActionEvent e)
{
// ..... fai qualcosa per INVIO ....
}
}