我有一个程序可以测试数字是否为素数。 我有一个基本的GUI,其中包含一个文本字段和一个名为check的按钮。现在,我通过添加一个简单的GUI数字键盘扩展了这个程序。在原始GUI上,我添加了一个名为 keyboard 的新按钮,因此在按下时,它将打开GUI编号键盘并禁用检查按钮。现在我的问题是如果GUI数字键盘窗口关闭,我该如何重新启用检查按钮? 以下是我的代码片段:
if (event.getSource()==jbKeyboard) {
jbCheck.setEnabled(false);
KeyboardGui g = new KeyboardGui();
if (g.equals(DISPOSE_ON_CLOSE)) {
jbCheck.setEnabled(true);
}
}
但这不起作用。
答案 0 :(得分:2)
为键盘添加WindowListener
,在WindowClosing(WindowEvent e)
方法中,您可以执行jbCheck.setEnabled(true);
不确定是什么KeyboardGui,但是这样(在声明并初始化g之后添加):
g.addWindowListener(this);
然后您需要implement WindowListener
并添加适当的方法。
以下是关于窗口监听器的Java教程: http://docs.oracle.com/javase/tutorial/uiswing/events/windowlistener.html