2011-06-04 10 views
0

可能性の重複: How do I restrict JFileChooser to a directory?JFilechooserを使用してユーザーが1つのフォルダからのみ選択できるようにするにはどうすればよいですか?

JFileChooser FileC = new JFileChooser("C:\messy"); 
    int result = FileC.showOpenDialog(this); 
    if(result == JFileChooser.CANCEL_OPTION) 
    { 
     return; 
    } 

私はそれがフォルダC:\messyから始まっていますが、現在のユーザーは、この開始位置からすべてのディレクトリに移動することができます。

+1

そして、誰か他の人の票がこれを閉鎖する前に、私は解決策がここに掲載することを指摘したいと思います提示された他のソリューションとは若干異なり、ポスターはここに提示された解決策を好むかもしれない(またはそうでないかもしれない)。 – camickr

+1

@camickr:あなたのソリューションをここにコピーして、この質問を削除してみてはどうでしょうか(http://stackoverflow.com/questions/32529/how-do-i-restrict-jfilechooser-to-a-directory) – trashgod

+1

@trashgod、他の質問は3歳ですから。誰かが検索してその質問を見つけた場合、受け入れられた回答と10件の投票の回答が表示されます。新しい回答が追加されたことに気付かずに(回答が掲載された日付を見ている人は誰ですか?)、それでアップノートがないので答えを無視します。このフォーラムに参加している人は速すぎて投稿を終了できず、新しい解決策やアイデアは許されません。 – camickr

答えて

4

Single Root File Chooserは、選択を1つのディレクトリとその子に制限します。

あなたは子ディレクトリの選択を防止したい場合、あなたはまた、FileFilterのを追加する必要があります。

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

    public String getDescription() 
    { 
     return "Files only"; 
    } 
}); 
関連する問題