对 Java 来说是全新的,我在一个完整的砖墙上。
我的系统上有一个 JTextArea,我想进行实时更新,因此当向 table2(在我的数据库中)添加某些内容时,我的服务器会从数据库中提取新值,然后更新 JTextArea。
我完全不知道如何做到这一点,尽管我已经确定我需要使用 Thread 来让它工作。
非常感谢任何/所有帮助(我有点时间紧迫)
对 Java 来说是全新的,我在一个完整的砖墙上。
我的系统上有一个 JTextArea,我想进行实时更新,因此当向 table2(在我的数据库中)添加某些内容时,我的服务器会从数据库中提取新值,然后更新 JTextArea。
我完全不知道如何做到这一点,尽管我已经确定我需要使用 Thread 来让它工作。
非常感谢任何/所有帮助(我有点时间紧迫)
您可以做的是让您的线程在给定的时间段内轮询您的数据库,或者让更新数据库的进程触发您的 GUI 类可以获取的某种事件。
一旦发生这种情况,您就可以使用SwingUtilities.invokeLater()来更新您的 JTextArea。这样的事情应该做:
if (eventIsFired)
{
final String jtextAreaText = ...
SwingUtilities.invokeLater(new Runnable()
{
@Override
public void run()
{
jTextArea.setText(jTextAreaText);
}
});
}
假设是jTextArea
您的实际 JTextArea 被声明为全局变量。jTextAreaText
将需要声明为 final 以便可以通过内部类访问它。