【发布时间】:2011-12-22 17:40:34
【问题描述】:
我正在制作一个允许用户查看存储在不同数据库中的任务列表的应用程序。所以发生的事情是,我有一个可浏览数据库的名称列表(存储为文本文件)。程序加载该列表中的第一个数据库并显示内容。然后从一个菜单中,我允许用户在列表中选择另一个数据库。 (有点像,我想查看 Andy 的任务,现在是 Bob,现在是 Carl...)。
问题是,我不知道如何更新 UI 以便显示新数据库的内容。删除当前列出的任务,从数据库中读取,然后重新填充是微不足道的。但是我无法访问此代码(来自我的 Singleton 数据库驱动程序),因为我需要访问已加载到 EventQueue 的 Runnable 实例(我的所有 JComponent 都是私有的,就像我迄今为止遇到的所有教程一样)。我正在查看 EventQueue 中的 get/peek 方法,但它们似乎不是我需要的,因为它们返回 AWTEvents,而且除了 java.lang.Object 之外,我没有看到 AWTEvent 和 Runnable 之间的任何关系。
那么,是否有可能获得当前的 Runnable?怎么样?
提前感谢您的任何指导。
【问题讨论】:
-
我认为你可能会做错了。我认为没有必要尝试获取对“可运行”的引用。没有意义。您的 Swing GUI 不能访问数据库驱动程序代码吗?这不是从程序的控制类中调用的吗?
标签: java swing runnable eventqueue