java - 框架不显示?

标签 java swing jframe

我破坏了我的代码,但我不知道如何破坏。完全没有。

在某一时刻,编译和运行代码每次都会呈现一个窗口。然后我工作了大约15分钟,运行时帧不再出现。我尝试过撤消工作,添加运行方法,添加主方法,甚至直接从教科书复制和粘贴代码。没有任何效果。

我尝试粘贴尽可能少的代码。如果我的代码马虎,请原谅我;这是我第一次使用 swing。谢谢!

public class LibraryFrame extends JFrame implements ActionListener
{
    private JScrollPane studentScroller = new JScrollPane();
    private JPanel addStudent = new JPanel();
    private JTextField UID   = new JTextField();
    private JTextField name  = new JTextField();
    private JTextField email = new JTextField();
    private JButton okButton = new JButton("OK");
    private JButton closeButton = new JButton("Close");
    private JPanel buttonPane = new JPanel();

    public LibraryFrame() 
    {

        setTitle("Student Enrollment");
        setSize(500,200);
        setLocationByPlatform(true);


        addStudent.setLayout(new GridLayout(0, 2, 0, 0));
        addStudent.add(new JLabel("Enter Student UID:"));
        addStudent.add(UID);
        addStudent.add(new JLabel("Enter Student Name:"));
        addStudent.add(name);
        addStudent.add(new JLabel("Enter Student Email:"));
        addStudent.add(email);
        addStudent.add(Box.createRigidArea(new Dimension(0, 5)));
        addStudent.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));

        okButton.setActionCommand(null);
        closeButton.addActionListener(new ActionListener() //implement window close only
        {
            @Override
            public void actionPerformed(ActionEvent e) 
            { dispose(); }
        });

        buttonPane.setLayout(new BoxLayout(buttonPane, BoxLayout.LINE_AXIS));
        buttonPane.setBorder(BorderFactory.createEmptyBorder(0, 10, 10, 10));
        buttonPane.add(Box.createRigidArea(new Dimension(0, 0)));
        buttonPane.add(okButton);
        buttonPane.add(Box.createRigidArea(new Dimension(10,  0)));
        buttonPane.add(closeButton);

        Container studentPane = getContentPane();
        studentPane.add(addStudent, BorderLayout.CENTER);
        studentPane.add(buttonPane, BorderLayout.PAGE_END);
        pack();
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        pack();
        setVisible(true);
    }
}

最佳答案

  • 您没有显示 main 方法,因此我们不知道您如何尝试运行它。
  • 您将所有内容添加到studentPane。在哪里将 StudentPane 添加到 JFrame 的 this 对象中?如果没有添加到 GUI 中,则不会显示。

关于java - 框架不显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19393787/

相关文章:

java - 如何减少下拉菜单中项目的加载时间

java - Marshall/Unmarshall 嵌套映射与 JaxB

java - Citrus 框架 - 使用 Spring Integration 通过 SFTP 上传文件

java - JTable 选择其他行并在单击某个单元格时获取其数据

java - 在 Java 中使用框架和线程

java - Selenium 从下拉列表中选择值

java - 如何在 java swing 中为按钮网格实现 actionlistener?

java - JTree 单元格编辑器接收鼠标点击的方式因操作系统而异

java - 获取 onVisibilityChange ActionListener

java - JFrame 始终专注