Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使JFilechooser只允许用户从一个文件夹中进行选择?_Java_Swing_Jfilechooser - Fatal编程技术网

Java 如何使JFilechooser只允许用户从一个文件夹中进行选择?

Java 如何使JFilechooser只允许用户从一个文件夹中进行选择?,java,swing,jfilechooser,Java,Swing,Jfilechooser,可能重复: 我将它从文件夹C:\messy开始,但当前用户可以从此起始位置转到所有目录。将选择限制为单个目录及其子目录 如果要阻止选择子目录,则还需要添加文件筛选器: chooser.removeChoosableFileFilter( chooser.getAcceptAllFileFilter() ); chooser.addChoosableFileFilter( new FileFilter() { public boolean accept(File f) {

可能重复:

我将它从文件夹
C:\messy
开始,但当前用户可以从此起始位置转到所有目录。

将选择限制为单个目录及其子目录

如果要阻止选择子目录,则还需要添加文件筛选器:

chooser.removeChoosableFileFilter( chooser.getAcceptAllFileFilter() );
chooser.addChoosableFileFilter( new FileFilter()
{
    public boolean accept(File f)
    {
        return ! f.isDirectory();
    }

    public String getDescription()
    {
        return "Files only";
    }
});
将选择限制为单个目录及其子目录

如果要阻止选择子目录,则还需要添加文件筛选器:

chooser.removeChoosableFileFilter( chooser.getAcceptAllFileFilter() );
chooser.addChoosableFileFilter( new FileFilter()
{
    public boolean accept(File f)
    {
        return ! f.isDirectory();
    }

    public String getDescription()
    {
        return "Files only";
    }
});

在其他人投票结束之前,我想指出,此处发布的解决方案与其他解决方案略有不同,海报可能(或可能不)更喜欢此处提供的解决方案。@camickr:为什么不复制您的解决方案并投票删除此问题?@trashgood,因为另一个问题已存在3年。如果有人搜索并找到问题,他们将看到一个被接受的答案和一个10票以上的答案。他们很可能不会注意到添加了一个新的答案(谁会在发布答案的日期前看起来更像一个人?),因此会忽略这个答案,因为它没有投票权。这个论坛的人很快就结束了帖子,不允许有新的解决方案和想法。@camickr:好的观点。而且,仅仅复制一个答案并不能保留该答案的现有价值。如前所述,IIUC的首选方法是标记问题以引起主持人的注意。关于是否这样做,我听从你的意见。好文章,顺便说一句。@trashgood,问题是人们太不一致了。张贴的大多数问题与其他问题“重复”。为什么这个问题没有结束:?气垫船回答了这个问题,尽管他投票结束了这个问题。我想如果人们知道答案,他们就会回答问题,这样他们就可以获得“声誉积分”。如果他们不知道答案,就关闭它?在其他人投票关闭它之前,我想指出,这里发布的解决方案与其他解决方案略有不同,海报可能(也可能不)更喜欢这里提供的解决方案。@camickr:为什么不复制你的解决方案并投票删除这个问题?@trashgood,因为另一个问题是3岁。如果有人搜索并找到问题,他们将看到一个被接受的答案和一个10票以上的答案。他们很可能不会注意到添加了一个新的答案(谁会在发布答案的日期前看起来更像一个人?),因此会忽略这个答案,因为它没有投票权。这个论坛的人很快就结束了帖子,不允许有新的解决方案和想法。@camickr:好的观点。而且,仅仅复制一个答案并不能保留该答案的现有价值。如前所述,IIUC的首选方法是标记问题以引起主持人的注意。关于是否这样做,我听从你的意见。好文章,顺便说一句。@trashgood,问题是人们太不一致了。张贴的大多数问题与其他问题“重复”。为什么这个问题没有结束:?气垫船回答了这个问题,尽管他投票结束了这个问题。我想如果人们知道答案,他们就会回答问题,这样他们就可以获得“声誉积分”。如果他们不知道答案,就关闭它?