当前位置: 首页 > 知识库问答 >
问题:

使用JFileChooser打开文件并在JFrame/JPanel中显示

邹高峻
2023-03-14

因此,我试图在NetBeans IDE中创建swing gui。我对java和GUI的构建是新手,所以这是一个学习曲线。

我创建了一个名为“open”的JMenuItem,并使用JFileChooser打开并显示一个文件。我限制自己使用的文件扩展名是“*.map”。

所以我让我的代码工作了,它在我的桌面上的一个新窗口中打开了选定的文件。但我想知道如何打开JFrame中的文件,而不是一个新窗口。它不是一个。txt文件,所以我假设我不能使用JTextArea或jtextfield。我是否在JFrame中创建JPanel?

下面是my ActionPerformed事件代码:

private void OpenActionPerformed(java.awt.event.ActionEvent evt) {
    try{
        JFileChooser chooser= new JFileChooser();
        chooser.setCurrentDirectory(new File("c:\\temp"));
        chooser.setFileFilter(new FileNameExtensionFilter("map","MAP"));
        int value = chooser.showOpenDialog(null);
        if(value == JFileChooser.APPROVE_OPTION){
            File selectedFile = chooser.getSelectedFile();
            String path = selectedFile.getAbsolutePath();

            File myFile = new File(path);
            Desktop.getDesktop().open(myFile);
            messageLabel.setText("Map successfully Loaded!");
        }
    }catch(Exception e){
        JOptionPane.showMessageDialog(null,e);
    }

共有1个答案

米丰
2023-03-14

最终找到了如何在jtextarea中显示文件。谢谢你们的回复。这是我更新的代码和它的工作就像我想要的。

    private void OpenActionPerformed(java.awt.event.ActionEvent evt) {                                 
                JFileChooser chooser= new JFileChooser();
                chooser.setCurrentDirectory(new File("c:\\temp"));
                chooser.setFileFilter(new FileNameExtensionFilter("map","MAP"));
                int value = chooser.showOpenDialog(null);
                File f= chooser.getSelectedFile();
                String filename= f.getAbsolutePath();
                
                try{
                    FileReader reader = new FileReader(filename);
                    BufferedReader br = new BufferedReader(reader);
                    jTextArea1.read(br,null);
                    br.close();
                    jTextArea1.requestFocus();
                }catch(Exception e){
                    JOptionPane.showMessageDialog(null,e);
                }
        
        
    }                                    
 类似资料:
  • 问题内容: 作为一个小项目,我认为制作文本编辑器会很酷。我目前无法打开文件。这是我打开文件的代码(是,打开是): 尝试块给我带来了麻烦。Eclipse表示未定义type 。似乎也未定义。有另一种方法可以解决此问题,或另一种工作原理相同的方法吗? 问题答案: 你需要调用在一旦返回,所以更改您的代码:

  • 我正在尝试使用一个菜单栏,使用户能够选择一个文件,并在JPanel中显示它,图像应该完全适合JPanel。但是JFileChooser在从对话框中成功选择文件时不会显示任何内容。我试着参考了许多链接:如何向JPanel添加图像?浏览图像文件并使用Java Swing显示它,但没有任何结果。请帮帮忙。以下是我的代码: 更新后的代码如下:

  • 我知道同样的问题已经被问过很多次了,但是我似乎真的没有在我的代码中发现阻碍JPanel类型的对象显示在JFrame中的错误。下面是扩展JFrame的类的构造函数: 当我运行main方法(这里没有显示)时,它只显示框架和按钮。如果有人能在这方面给点提示,我会非常感谢的。

  • 你好,我有一些问题,我想创建一个问题,当我单击play game我想添加一个JPanel到我的JFrame GameGUI和替换按钮的名称,并设置一个问题,当我单击in按钮,我通过下一个问题(quizz:/)但JPanel没有显示在我的JFrame中。对不起我的英语:'( 下面是Main类的代码: 这里有一个带有标签和2个按钮的JPanel表单 }

  • 问题内容: 我是的新手。在我的应用程序中,我想在或中显示。 谁能帮我吗? 问题答案:

  • 问题内容: 我正在编写一个需要文件打开对话框的Java程序。文件打开对话框并不难,我希望使用。我的问题是我想要一个双窗格(由2组成)。左侧面板上有一个,右侧面板上有一个文件打开对话框。 当我使用它时,将在所有其他窗口上方打开对话框,这不是我想要的。有什么方法可以使(或可能是另一个文件选择对话框)显示在而不在其上方弹出? 这是我尝试过的代码,目前已非常简化。目前,我只是试图将嵌入。 我也打过电话与和