Esse codigo mostra duas areas de texto e um menu, ao precionar ACCELERATOR_KEY dentro de qualquer Text Area
e invocado uma AbstractAction, Gostaria de Saber o que tenho que mudar nesse codigo para que consigua identificar qual
TextArea esta com foco ??
import javax.swing.*;
import java.awt.event.*;
public class text extends JFrame {
public text(){
super("Text");
JTextArea are1 = new JTextArea(30,30);
are1.setEditable(true);
JTextArea are2 = new JTextArea(30,30);
are2.setEditable(true);
JSplitPane split = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
split.setResizeWeight(.5);
split.add(are1);
split.add(are2);
this.add(split);
JMenuBar barra = new JMenuBar();
barra.add(criarMenu());
setJMenuBar(barra);
}
public JMenu criarMenu(){
JMenu menu = new JMenu("Test");
AbstractAction actao = new AbstractAction(){
/**
* Acao Padrao
*/
private static final long serialVersionUID = -446468439699958415L;
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
//
System.out.println("Em qual Area de Texto estava digitando ??");
}
};
actao.setEnabled(true);
actao.putValue(Action.NAME, "Text");
KeyStroke key = KeyStroke.getKeyStroke("A");
actao.putValue(Action.ACCELERATOR_KEY, key);
JMenuItem testmenu = new JMenuItem(actao);
menu.add(testmenu);
return menu;
}
public static void main(String[] args){
JFrame test = new text();
test.setSize(200, 200);
test.setVisible(true);
}
}
Obrigado