如何实时更新JOptionPane中的JTextField?

时间:2016-12-06 06:18:42

标签: java focus joptionpane

当我在JTextField中单击时,我想要摆脱已经在我的JTextField中设置的文本(专注于JTextField)。

这是我的代码:

        if (newSerial.isFocusOwner())
        {
            newSerial.setText("");
        }

如何在运行JOptionPane.showMessageDialog的同时运行此代码?

1 个答案:

答案 0 :(得分:0)

我不确定我是否完全理解您要做的事情,但根据我对您的问题的解释,您在显示JOptionPage消息对话框时有一个要更新的文本字段。

JOptionPane对话框阻止Swing事件调度线程(EDT),因此您无法在显示UI时更新UI,除非您从不同的线程执行此操作(但这不是很好 - Swing组件应该在美东时间)。如果我正确地读了你的问题,最简单的选择可能是用一个不是模态对话框的JDialog替换你的JOptionPane.showMessageDialog(...),因此,不会阻止EDT。 / p>