14

JFileChooser を「リスト」ビューで開始するのではなく、詳細ビューで開始したいのですが、どうすればよいですか?

4

2 に答える 2

21

ActionMap からアクションを取得できます。

JFrame frame = new JFrame();
JFileChooser  fileChooser = new JFileChooser(".");
Action details = fileChooser.getActionMap().get("viewTypeDetails");
details.actionPerformed(null);
fileChooser.showOpenDialog(frame);
于 2013-04-30T05:27:21.370 に答える
2

これは少しトリッキーで、おそらく公式にはサポートされていませんが、これを行う方法を見つけました。まず、JFileChooser が持つ FilePane を取得する必要があります。その方法を私が知っている唯一の方法は、そのコンポーネントをトラバースしてから、取得するinstanceof FilePaneまで実行することです。次に、これは詳細ビューで開始されます。

    if (root instanceof FilePane) {
        FilePane filePane = (FilePane) root;
        Action viewTypeAction = filePane.getViewTypeAction(FilePane.VIEWTYPE_DETAILS);
        viewTypeAction.actionPerformed(null);
    }
于 2013-04-30T05:08:15.980 に答える