2011-11-18 27 views
5

JFileChooserでファイルをダブルクリック(ダブルクリックではない)すると、選択したファイルの名前を変更できます。この機能を無効にする方法は?私は試しましたJFileChooserでファイルの名前を変更できませんか?

UIManager.put("FileChooser.readOnly", Boolean.TRUE); 

しかし、動作しません。

+1

あなたはこれをしましたか? – mre

+1

@mreはい、しました。私はそれを静的なブロックに入れました。 – kofucii

+0

私はマシン上でこれを試してみました。プロパティーを設定しています(私はJRE6を実行しています)。 「新規フォルダ」ボタンも削除されます。 –

答えて

11

驚いたことに、ではJFileChooser自体からファイルの名前を変更したり、新しいディレクトリを作成したりすることはできません。正しく推測すると、このFileChooserの「機能」をUIManagerから無効にする必要があります。ここで

は役立つかもしれないスニペットです:

http://www.coderanch.com/t/555535/GUI/java/FileChooser-readOnly

Boolean old = UIManager.getBoolean("FileChooser.readOnly"); 
    UIManager.put("FileChooser.readOnly", Boolean.TRUE); 
    JFileChooser fc = new JFileChooser("."); 
    UIManager.put("FileChooser.readOnly", old); 

重要なことは、あなたがファイルチューを作成する前に、「FileChooser.readOnly」を設定することです。

+0

コメントのうちどれかを読んだことがありますか? – mre

+1

@mre実際にこれは私のために働きます –

+0

@ Eng.Fouad、あなたはファイル名を編集できませんか?すべて私のために起こるのは、私が新しいフォルダを作成することができないということです.wtf – mre

1

Customizing a JFileChooser Look and Feelは、いくつかの名前の変更が

あなたの静的クラスを使用してJFileChooserに行くべき定数があります。

また、addMouseListenerをクリックして離してください。 JListのからのMouseListenerを除去するための手動解決のために

+0

およびF2キーリスナーなど –

+0

どのような種類のマウスリスナーですか?私はマウスリスナーが十分であるとは思わない。マウスイベントインターセプタのいくつかの種類のMybeそれは動作しますか? – kofucii