我想在我的Java应用程序中使用JFileChooser for Windows和FileDialog for Macs。我已经用JFileChooser编写了它,我是否需要完全重写它以处理Mac的情况(即检查当前的操作系统是Mac并使用FileDialog重新实现所有内容)还是有更简单的方法?
答案 0 :(得分:0)
简短回答:是的,你必须重新实现一切。
答案很长:您可以尝试在所有内容之上添加额外的抽象层,例如像MyOpenDialog
和MySaveDialog
之类的东西。这些类决定操作系统是使用JFileChooser
还是FileDialog
,因此您仍需要实现一次。但只有一次,如果您在应用程序的多个位置需要它,您可以使用自己的类。
请注意,FileDialog不提供JFileChooser的所有功能,例如:为用户提供可供选择的文件格式列表(FileFilter
)仅适用于JFileChooser
。