显示菜单栏中最近打开的项目

Ant*_*nto 4 java swing menu

我想用Java Swing创建一个窗口.该窗口将有一个带有File-> Open按钮的菜单栏,用户可以从中选择hid硬盘中的文件." 文件"菜单还应包含最近打开的项目列表,就像许多其他应用程序所示.有谁知道什么是最好的方法?

Ada*_*ski 6

我建议使用Preferences该类来保存最近打开的项目.这样,如果用户重新启动应用程序,则项目仍然可用.

请注意,在Windows上,Preferences类将数据存储在注册表中,这是本地Windows应用程序存储和检索最近打开的文件名的数量.

另请注意,Preferences类只是用作存储和检索(键,值)对的API.您仍然需要决定如何存储信息,并负责动态构建/更新JMenu访问新文件的时间.为了实现这一点,我建议实现一个Action(扩展AbstractAction)来处理用户试图打开文件的时间.当Action运行应该坚持新访问的文件的名字为Preferences类和动态重建文件JMenu(除了打开文件).

  • +1对于`Preferences`,虽然它不是_just_ for Swing.另外,Mac OS X上的`Preferences`存储在`〜/ Library/Preferences`中的各个文件中. (2认同)