0

我有以下问题。我有一个带有按钮的小表单(我们在这里讨论的是 JAVA),它通过与服务器的套接字连接以表单形式发送数据。现在,当我按下按钮时,它正在建立这个单一的连接,但与此同时,如果你得到我的话,按钮仍然保持“按下”状态。在由 actionlistener 激活的操作完成(建立连接、发送数据、关闭连接)之后,按钮被释放。

现在我的问题是,是否有一个简单的解决方法,如果有(或没有),我该如何解决?

提前致谢。

submit.addActionListener(this);

这是部分,但我希望在案文中明确说明。

public void actionPerformed(ActionEvent ae) {
        if (ae.getSource() == submit) {
            boodschap = testtext.getText();
//            System.out.println(boodschap);
            try {
                try {
                    UserConnection connect = new UserConnection(boodschap);
                } catch (SQLException ex) {
                    Logger.getLogger(UserAction.class.getName()).log(Level.SEVERE, null, ex);
                }
            } catch (ClassNotFoundException ex) {
                Logger.getLogger(UserAction.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
}

(哦,这段代码就像一个魅力。代码没有任何问题,它只是显示给你我的意思的指示。)

4

1 回答 1

3

问题是您正在 UI 线程上执行长时间运行的操作。如果您将代码放入 SwingWorker 甚至放入 Runnable 并在新线程中运行它应该可以解决您的问题

于 2012-05-10T15:06:20.090 回答