Java按钮没有显示在JFrame上

时间:2014-10-03 17:06:10

标签: java swing jframe jpanel

我对java很新,我正在开始一种词汇表程序。 一开始,我正在尝试使用带有按钮的JFrame。

但是当我运行时只显示1个按钮。 另外,我认为我没有正确定位按钮。

         package glossary;

import java.awt.BorderLayout;
import javax.swing.JFrame;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.*;

public class Glossary {


    public static void main(String[] args) {

         JFrame frame = new JFrame("Glossary");
         frame.setVisible(true);
         frame.setSize(400,200);
         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);



         JPanel panel1 = new JPanel();
         frame.add(panel1);
         JButton LookUpWord = new JButton("Look up word");
         panel1.add(LookUpWord, BorderLayout.NORTH);

         JPanel panel2 = new JPanel();
         frame.add(panel2);
         JButton SubmitNewWord = new JButton("Submit word");
         panel2.add(SubmitNewWord, BorderLayout.SOUTH);

          }

}

请告诉我我做错了什么!

2 个答案:

答案 0 :(得分:3)

我认为您对于添加组件的位置感到困惑。您可能不打算将按钮添加到NORTH和SOUTH,而是将面板添加到NORTH和SOUTH的框架中。此外,请等到您在调用frame.setVisible(true)之前添加了所有组件。

试试这个:

public static void main(String[] args) {
    JFrame frame = new JFrame("Glossary");
    frame.setSize(400, 200);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JButton LookUpWord = new JButton("Look up word");  // create the button
    JPanel panel1 = new JPanel();  // create the panel
    panel1.add(LookUpWord);  // add the button to the panel
    frame.add(panel1, BorderLayout.NORTH);  // add the panel to the frame

    JButton SubmitNewWord = new JButton("Submit word");
    JPanel panel2 = new JPanel();
    panel2.add(SubmitNewWord);
    frame.add(panel2, BorderLayout.SOUTH);

    frame.setVisible(true);
}

答案 1 :(得分:0)

添加frame.setVisible(true);

希望本教程可以帮助您

How to Make Frames