1

JFileChooser に必要な拡張子 (テキスト ファイル) だけを表示させることができません。

JFileChooser fc = new JFileChooser();
            FileNameExtensionFilter textFilter = new FileNameExtensionFilter("Text Files","txt");
            fc.addChoosableFileFilter(textFilter);

私は何を間違っていますか?フィルターを削除すると、テキスト ファイルが表示されます。質問はばかげているように思えるかもしれませんが、解決策を見つけようとしましたが、私のコードは他の例と同じように見えます. 多分私は脳がロックされているだけです。

お時間をいただきありがとうございます

提案されたアプローチを試しましたが、まだ同じ問題があります。したがって、どこかで何かが間違っているに違いありません。私はクラスコードをロードします - おそらく誰かが私が間違っていることを見つけることができます:

import java.awt.event.ActionEvent;

 import java.awt.event.ActionListener;
 import javax.swing.JButton;
 import javax.swing.JFileChooser;
 import javax.swing.JFrame;
 import javax.swing.filechooser.FileNameExtensionFilter;


public class ButtonListener implements ActionListener {

private JFrame fr;

public ButtonListener (JFrame frame){
    fr = frame;
}

public void actionPerformed(ActionEvent event) {
    if(event.getSource() instanceof JButton) {
        String action = event.getActionCommand();

        if (action.equals("First text")){

            JFileChooser fc = new JFileChooser();
            FileNameExtensionFilter textFilter = new FileNameExtensionFilter("Text Files","txt");
            fc.addChoosableFileFilter(textFilter);
            int returnVal = fc.showOpenDialog(fr);
            }
        else if (action.equals("Second text")){

            }
        else {
            System.out.println("Error in ButtonListener");
        }
    }

}

}

完成していませんが、私が抱えている拡張機能の問題を処理できるはずです。

4

2 に答える 2

0

あなたの質問はすでに回答されていることは知っていますが、念のため、あなたが知らなかった場合に備えて... FileNameExtensionFilter を使用して、次のことを行うこともできます。

fc.setFileFilter(textFilter);

私は同じ問題で立ち往生していました。しばらくあなたのように。;)

于 2014-10-21T12:05:29.067 に答える