ShowopenDialog无法在actionlistener下工作

时间:2017-10-04 12:11:09

标签: java actionlistener

所以我一直在尝试创建一个文件追踪器,打开一个文本文件,然后将内容粘贴到我定义为textArea的JtextArea中。 但我不能让我的showOpenDialog在有参数(这个)时没有给出错误,我研究并且答案是填写(null)这确实使得filechooser工作但是当我尝试打印它的内容时也只是返回null。我正在使用Eclipse程序,因此自动填充代码。 我对Java很新,不知道出了什么问题。 我真的很抱歉,如果这不是在这里发布的方式。

JButton btnNewButton = new JButton("Bladeren");
btnNewButton.addActionListener(
    new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            JFileChooser fileChooser = new JFileChooser();
            fileChooser.setCurrentDirectory(new File(System.getProperty("user.home")));
            int result = fileChooser.showOpenDialog(this);
            if (result == JFileChooser.APPROVE_OPTION) {
                File selectedFile = fileChooser.getSelectedFile();
                System.out.println("Selected file: " + selectedFile.getAbsolutePath());
                String content = readFile(selectedFile, StandardCharsets.UTF_8);
                System.out.println(content);
                textArea.setText(content);
            }

        }

        private String readFile(File selectedFile, Charset utf8) {
            // TODO Auto-generated method stub
            return null;
        }
    }
);

1 个答案:

答案 0 :(得分:0)

您可以从类型Component查看参数必须为API。那么 this 在您的示例中意味着什么?您的班级extends来自哪个其他班级/界面或implements

您没有粘贴readFile方法的代码,但问为什么它返回null?这样我们就无法帮助您,所以请发布代码。