**** 请注意,我的问题是关于另一个线程中的答案。然而,当我在该帖子中发布问题时,它被删除了。所以我在这里重新发布这个问题(带有我所指的确切帖子的链接)。 ****
我有几个与此相关的问题thread 。如果我有一个计时器(updateTimer),我想在窗口关闭时取消它,我可以将其代替 System.out.println("Windows Closing");陈述?或者我是否必须将其放在实际的“View”类中(我有三个类 DesktopApplication.App、DesktopApplication.View 和 DesktopApplication.AboutBox,配置 Window 方法位于 .App 类中)。
沿着这条线,如果我可以把 updateTimer.cancel();行,那么这是否意味着我可以从文件中读取/写入,并填充文本框(WindowOpen 事件)并在关闭事件中将信息写入文件?
我想做的是:当我的应用程序启动(并且主窗口打开)时,我想检查配置文件。如果存在,那么我想从该文件中获取用户名、密码、隧道 ID 和 IP 地址,并在主 jPanel 中填充它们各自的文本框。如果它不存在,那么我不会用它做任何事情。
关闭应用程序时,我希望发生两件事:1)任何正在运行的 UpdateTimers 将被取消(以有效且彻底地关闭应用程序),2)将用户名、密码、隧道 ID 和 IP 地址写入配置文件以供下次运行。
我已经在Netbeans中创建了该文件,因此“exitMenu”是自动生成的,并且没有配置“关闭按钮”。因此,我需要使用 WindowClosing 来完成此操作(或者破解文本编辑器中的“exitMenu”方法,并希望它不会对 Netbeans 造成问题)。
我还应该补充一点,用户名和密码实际上是真实用户名和密码的 MD5 哈希值。因此,虽然有人可以打开文本文件并阅读它们,但他们只会看到如下内容:
c28de38997efb893872d893982ac 3289ab83ce8f398289d938999cab 12345 192.168.2.2
谢谢,祝你有美好的一天:)
帕特里克. 进行编辑以包含有关将存储的“用户名和密码”的信息。
最佳答案
can I put that in place of the System.out.println("Windows Closing"); statement?
是的,您可以在监听器中放置任意代码
Along that line, if I can put the updateTimer.cancel(); line in, then does this mean I can read/write from a file, and popluate textboxes also (WindowOpen event) and write the information to the file in the closing event?
是的
关于java - 关于在 Java Swing 桌面应用程序中使用 Window Listener 的两个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5778004/