在jfilechooser多文件选择器启用中打开对话框后,java文件将显示所选文件
我正在处理这个swing组件JfileChooser。我正在选择多个文件,然后单击“确定”。 之后,如果我再次打开选择文件,它将显示我不想要的先前选择的文件。 我希望维护以前的目录,但不希望维护以前的文件。它提供了非常糟糕的用户体验
下面是我所写的代码片段
JFileChooser fileopen = new JFileChooser();
private void fileButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_fileButtonActionPerformed
fileopen.setMultiSelectionEnabled(true);
int ret = fileopen.showDialog(null, "Open file");
if (ret == JFileChooser.APPROVE_OPTION) {
File[] file = fileopen.getSelectedFiles();
fileText.setText(file[0].getAbsolutePath());
for( int i =1;i < file.length;i++)
{
fileText.append("||");
fileText.append(file[i].getAbsolutePath());
}
}else {
log.info("File access cancelled by user.");
}
}//GEN-LAST:event_fileButtonActionPerformed
我试过了这些东西。任何帮助都将不胜感激
# 1 楼答案
每次需要时创建} 并传递它
JFileChooser
的新实例,或者调用^{null
更新
因此,我快速查看了
setSelectedFile
和setSelectedFiles
方法,它们应该清除选择和“文件名”字段,但在Mac OS上似乎对我不起作用,因此这可能是一个外观问题我倾向于做的是欺骗。我将最后一个目录值存储在
Preferences
API中,之所以这样做是因为它非常简单,而且还意味着该值在执行过程中保持不变,非常有用。如果您不想在执行过程中保持它,可以使用Map
或Properties
或其他变量,这取决于您自己