Java Swing,暂停程序的正常过程,直到发生某些事情

时间:2015-01-04 20:39:43

标签: java swing

我正在制作Java Swing应用程序,我希望它能够存储一些数据。我正在使用ObjectInput / OutputStream类,我想要做的是,在我设置可见主框架之前,从磁盘读取文件,然后在程序中我修改它们等,当我按下关闭按钮我想要将新对象保存在相同的文件中(替换它们)。

我虽然setVisible()函数暂停了线程,直到调用dispose()函数。好吧,我在setVisible()函数之后编写代码,但是一旦主框架打开就会运行。我怎样才能解决我的问题?

顺便说一下,我使用的是netBeans,而且我使用的是JFrame表单。

2 个答案:

答案 0 :(得分:1)

  1. 将数据加载到某种模型中。该模型提供了setter(如果适用)和getter以允许其他类访问数据,但该模型提供了实际管理。
  2. 在这种情况下,您可以使用WindowListener来检测windowClosing事件,使用新数据更新模型并请求模型保留它。
  3. 有关详细信息,请参阅How to Write Window Listeners

答案 1 :(得分:0)

您可以使用Thread.sleep()来使用线程类暂停,或者使用Swing Timers来表示相同的行为。