我有以下Java 8 Swing代码:
JButton button = new JButton("Browse");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JFileChooser fileChooser = new JFileChooser();
fileChooser.setDialogTitle("Choose file as input");
fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
FileNameExtensionFilter filter = new FileNameExtensionFilter("Excel Filter", "xls", "xlsx");
fileChooser.setFileFilter(filter);
if (fileChooser.showOpenDialog(mainWindow) == JFileChooser.APPROVE_OPTION) {
File selection = fileChooser.getSelectedFile();
createFile(selection);
}
}
});
这个想法是,用户选择一个目录,然后键入应用程序随后将创建的 new 文件的名称。但是当我单击按钮时,这就是我看到的:
请注意,没有“ 文件名”文本字段可在其中输入新文件名吗?我需要更改哪些配置才能获得此功能?
答案 0 :(得分:6)
您正在使用showOpenDialog
,顾名思义,它显示一个“打开文件”对话框来选择要打开的文件。不允许打开不存在的文件通常是没有意义的。
如果要允许用户选择新文件,则可能希望showSaveDialog
显示“保存文件”对话框,并(应)允许创建新文件。