无法获得JFileChooser的示例JAVA代码以在NetBeans IDE 8.2中工作

我正在尝试编写一个程序,该程序将提示用户选择一个文件夹,然后将允许用户显示该文件夹中的所有内容。我一直在网上搜索,找到了几个使用JFileChooser的示例,包括此处的一个示例。当我尝试在JGrasp中的上一个链接中使用该示例时,该示例运行没有问题。但是,当我尝试在NetBeans中运行它时,会出现错误(由于需要返回类型,因此无法编译DemoJFileChooser类,并且Main中的行显示找不到符号DemoJFileChooser)。我不确定这是什么问题,但是我已经尽力做到了


下面的程序可以编译并正常运行,但是当我选择选项1时,该程序仅冻结一秒钟,然后重新显示菜单。我无法显示文件选择对话框。我究竟做错了什么?


import java.util.Scanner;

import javax.swing.JFileChooser;


public class FileDirectoryProcessing {


JFileChooser chooser;

String choosertitle;


public static void main(String[] args) {


    SelectionMenu:

    while (true) {

        Scanner scannerIn = new Scanner(System.in);

        System.out.println("0 - Exit");

        System.out.println("1 - Select Directory");

        System.out.println("2 – List directory contents");

        System.out.println("Select Option");

        try{

        int userInput = Integer.parseInt(scannerIn.nextLine());

        switch (userInput) {

            case 0:

                System.out.println("Thank you");

                break SelectionMenu;

            case 1:

                System.out.println("Select a directory");


                new FileDirectoryProcessing().ChooseDirectory();

                break;

            case 2:

                System.out.println("Directory Contents");

                break;

            default:

                System.out.println("Please make a valid selection");

                break;

        }


        } catch (NumberFormatException e){

            System.out.println("Please make a valid selection");

        }           

    }      

}


临摹微笑
浏览 134回答 1
1回答

精慕HU

该方法showOpenDialog接受一个组件,而this(的实例FileDirectoryProcessing)不是一个组件,因此是问题所在。component在方法中提供父实例。或现在,您也可以通过chooser(实例为JFileChooser)或null。因此,以下两个选项都可以正常工作:chooser.showOpenDialog(chooser)或者chooser.showOpenDialog(null)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java