方法调用不在buttonActionEvent上,但在其他地方可以工作吗?

时间:2015-02-24 21:42:58

标签: java

我只是想关闭一个我已经工作过(测试过)的过程。我唯一的问题是,当我试图通过点击按钮关闭此过程时,它不会起作用。该方法将在其他地方工作以关闭该过程,但无论出于何种原因,它只是在按钮事件中不起作用..

public Process p;

public final void openKeyboard() throws IOException {
ProcessBuilder pb = new ProcessBuilder("cmd","/c","C:\\Program Files\\Common Files\\microsoft shared\\ink\\tabtip.exe");
p=pb.start();
}

public final void closeKeyboard() {
    p.destroy();
}

这是应该调用closeKeyboard方法并结束进程的按钮事件:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    MainMenu mm = new MainMenu();
    mm.run();
    closeKeyboard();  
} 

这种方法不会关闭键盘,但是如果我从另一种方法调用closeKeyboard,它会起作用......我错过了一些明显的东西吗?谢谢!

1 个答案:

答案 0 :(得分:0)

“请注意,如果您调用的进程创建新的子进程,则可能不会终止这些进程(请参阅http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4770092)。”

这可能是问题吗?