And*_*rea 5 java swing jfilechooser
我正在使用JFileChooser作为JTable单元的编辑器.我希望用户使用JFileChooser选择一个有效的文件,然后当他们按Enter键时,文件路径将保存到单元格中.如果他们想要清除细胞,则会出现问题.所以我希望他们清除JFileChooser,然后用空字符串设置单元格(或者为null,无论哪个).
我的问题是,如果您没有选择文件,则无法按"批准"按钮.在我的代码中,"空!" 永远不会打印.有没有办法在没有选择文件时允许选择批准按钮?这是我尝试过的:
JFileChooser component = new JFileChooser(){
public void approveSelection(){
File f = getSelectedFile();
if(f==null){
System.out.println("empty!");
return;
}else{
if(!f.exists()){
System.out.println("does not exist!");
}else{
super.approveSelection();
}
}
}
};
Run Code Online (Sandbox Code Playgroud)
您可能有兴趣覆盖 JFileChooser cancelSelection() 方法,该方法在用户取消文件选择时调用。
也许使用 JFileChooser 选择空文件名来进行 JTable 单元格清除并不直观且用户友好。最好在 JTable 单元格旁边有一个小按钮,以便在用户单击它或任何其他选项来重置单元格值时清除单元格值,并且仅使用 JFileChooser 更改单元格中的文件路径。