Я создаю пользовательское всплывающее меню, используя только расширенные JComponent
в качестве пунктов меню и расширенные JWindow
для их хранения. Мой вопрос: как отправить сигнал из экземпляра JComponent
при нажатии (имеет MouseListener
) в JTextField
для выполнения действий вырезания/копирования/вставки?
ИЗМЕНИТЬ:
Постараюсь объяснить точнее.
Класс JTextField (упрощенный):
public class TextInputField extends JTextField implements FocusListener {
private MenuPopupWindow popUp;
public TextInputField() {
popUp = new MenuPopupWindow();//MenuPopupWindow class extends JWindow
MenuItem paste = new MenuItem("Paste",
new ImageIcon(getClass().getResource("/images/paste_icon.png")),
"Ctrl+V");//MenuItem class extends JComponent, has implemented MouseListener - and when mouseClicked(MouseEvent e) occurs, somehow action signal have to be sent to this class
MenuItem copy = ....
MenuItem cut = ....
Action pasteAction = getActionMap().get(DefaultEditorKit.pasteAction);
paste.setAction(pasteAction);//How to make it to work?
popUp.addMenuItem(paste);
popUp.addMenuItem(cut);
popUp.addMenuItem(copy);
}
}
Как это сделать правильно?