Java 使用类的普通方法调用actionPerformed方法

Java 使用类的普通方法调用actionPerformed方法,java,swing,actionlistener,keylistener,keyevent,Java,Swing,Actionlistener,Keylistener,Keyevent,我正在尝试调用类的普通方法中的actionPerformed()。我知道只要按下按钮,它就会自动执行。但我想在按下特定文本字段上的ENTER按钮时调用该方法。可以在keyPressed()或在正常函数/方法中调用actionPerformed() 下面的代码将让您大致了解我想做什么 void myFunction() { actionPerformed(ActionEvent ae); } public void actionPerformed(ActionEvent ae) {

我正在尝试调用类的普通方法中的
actionPerformed()
。我知道只要按下按钮,它就会自动执行。但我想在按下特定文本字段上的ENTER按钮时调用该方法。可以在
keyPressed()
或在正常函数/方法中调用
actionPerformed()

下面的代码将让您大致了解我想做什么

void myFunction()
{
      actionPerformed(ActionEvent ae);
}

public void actionPerformed(ActionEvent ae)
{
      //my code
}

如果需要,请提前感谢
JTextField
内按ENTER键执行
JButton
的一些
actionPerformed()
方法,然后我想您可以使用
AbstractButton
类中的方法来实现这一点。尽管采用这种方法,但按下ENTER键时,May可能会覆盖
JTextField
的原始行为:(

请看一下下面粘贴的代码,看看这是否符合您的需要:-


我知道这是一条古老的线索,但对于其他人来说,我的建议是这样的:

// This calls the method that you call in the listener method
void performActionPerformedMethod(){
    actionPerformed(ActionEvent e);
}

// This is what you want the listener method to do
void actionPerformedMethod(){
// Code...
}

// This is the interface method
public void actionPerformed(ActionEvent e){
    actionPerformedMethod()
}

如果希望执行方法调用,然后将应用程序逻辑移动到另一个方法并调用它,则不应该这样做。处理事件是一个EDT作业。只让
ActionListener
执行它的作业有什么错?这正是
ActionListener
doClick()
执行的+1操作,也可以在键绑定中看到。@VighaneshGursale:非常欢迎您并保持微笑:-)这无疑是一个很好的方法。更模块化,我喜欢+1:-)
// This calls the method that you call in the listener method
void performActionPerformedMethod(){
    actionPerformed(ActionEvent e);
}

// This is what you want the listener method to do
void actionPerformedMethod(){
// Code...
}

// This is the interface method
public void actionPerformed(ActionEvent e){
    actionPerformedMethod()
}