0

我有一个程序可以测试数字是否为素数。我有一个基本的 GUI,其中包含一个文本字段和一个名为 check 的按钮。现在,我通过添加一个简单的 GUI 数字键盘扩展了这个程序。在原来的 GUI 上,我添加了一个名为键盘的新按钮,因此当按下时,它将打开 GUI 数字键盘并禁用检查按钮。现在我的问题是,如果 GUI 数字键盘窗口已关闭,如何重新启用复选按钮?下面是我的代码片段:

        if (event.getSource()==jbKeyboard) {
            jbCheck.setEnabled(false);    
            KeyboardGui g = new KeyboardGui();
            if (g.equals(DISPOSE_ON_CLOSE)) {
                    jbCheck.setEnabled(true);
            }
         }

但这不起作用。

4

1 回答 1

2

You add a WindowListener for the keypad, and in the WindowClosing(WindowEvent e) method, you can do your jbCheck.setEnabled(true);

Not sure what KeyboardGui, but something like this (added after you declare and initialize g):

g.addWindowListener(this);

Then you will need to implement WindowListener and add the appropriate methods.

Here is the Java Tutorial on window Listeners: http://docs.oracle.com/javase/tutorial/uiswing/events/windowlistener.html

于 2012-04-13T12:38:24.963 回答