即使程序编译,GUI也不会运行

时间:2017-07-02 20:33:14

标签: java user-interface

我是编程新手,并被要求创建一个GUI,从文本字段中读取文本文件的名称并显示在textarea中。这就是我到目前为止所完成的事情。

import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import java.util.*;


public class FileLoader extends JFrame implements ActionListener {


private final LayoutManager layout;
private JButton loadButton;
private JTextField filename;
private JTextArea display;

public FileLoader() 
{

layout = new FlowLayout();
  setLayout(layout);
   JFrame frame = new JFrame();
   JPanel buttonPanel = new JPanel();

   loadButton = new JButton("Load File");
   filename = new JTextField(10);
   buttonPanel.add(filename);
   buttonPanel.add(loadButton);
   display = new JTextArea(25, 50);

   add(new JLabel("File Name: "));
   add(filename);
   add(new JScrollPane(display));
   add(loadButton);



   loadButton.addActionListener(this);


 }

  public void actionPerformed(ActionEvent event) {
 try{

   String file = filename.getText();
   int filesize = file.length();

if (filesize>= 5 && filesize<= 10){
  Scanner input = new Scanner(getClass().getResourceAsStream(file));
  String DisTXT = " ";
  while (input.hasNextLine()){
   DisTXT = DisTXT  + input.nextLine();
  if (input.hasNextLine()){
      DisTXT = DisTXT  + "\n";
}
}
 display.setText(DisTXT);
input.close();
}
else
{
if (filesize< 5){
 display.setText("File NAME ERROR: NAME IS TOO SHORT");
} 
else {
display.setText("File NAME ERROR: NAME IS TOO LONG"); 
} 

 }  
}
catch (NullPointerException e) { 
display.setText("File not found");
}
}

  public static void main(String[] args) {
    new FileLoader();

 }
 }

多次检查后,代码中的逻辑是有意义的(对我来说,如果你抓到我可能错过的东西请告诉我)唯一的问题是出于某种原因,当我去运行它时,没有任何反应。我很抱歉,如果这个问题有一个简单的解决方案,但我们只在GUI的第2天,我不太确定为什么会这样,有人可以解释一下吗?

0 个答案:

没有答案