I am developing an application using jTable for inventory management.
The action is, by typing the item code in a jTextField and by pressin
You can use Java 8 lambda functions:
final String tustakmaad = "Solve";
KeyStroke enter = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0);
panel.getTblBelgetarihiliste().getInputMap(JTable.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT).put(
enter, tustakmaad);
panel.getTblBelgetarihiliste().getActionMap().put(tustakmaad, new DelegateAction(
ae -> eventMytable_enterkey()));
and DelegateAction class should be like this:
package com.ozpas.entegre.controller;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.AbstractAction;
public class DelegateAction extends AbstractAction {
/**
*
*/
private static final long serialVersionUID = 1L;
ActionListener myaction = (ae) -> {
System.out.println("empty action");
};
public DelegateAction(ActionListener customaction) {
this.myaction = customaction;
}
@Override
public void actionPerformed(ActionEvent e) {
myaction.actionPerformed(e);
}
public ActionListener getMyaction() {
return myaction;
}
public void setMyaction(ActionListener myaction) {
this.myaction = myaction;
}
}