JButton не появляется в JFrame - PullRequest
0 голосов
/ 15 февраля 2012

Здравствуйте, коллеги-программисты!

Должны ли JButtons появляться в JFrame?Я использовал метод setVisible на JButton, но он не появится.

Сообщение об ошибке:

Exception in thread "main" java.lang.IllegalArgumentException: adding a window to a container
    at java.awt.Container.checkNotAWindow(Unknown Source)
    at java.awt.Container.addImpl(Unknown Source)
    at javax.swing.AbstractButton.addImpl(Unknown Source)
    at java.awt.Container.add(Unknown Source)
    at FrameTest.initializeGameFrame(FrameTest.java:27)
    at FrameTest.main(FrameTest.java:17)

Код:

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;


public class FrameTest extends JFrame{

    private static final int gameWindowHeight = 700;
    private static final int gameWindowLength = 700;

    /** Set up frame for game window
     * 
     */

    public static void main(String[] args)
    {
        FrameTest.initializeGameFrame();

    }

    public static void initializeGameFrame()
    {
        FrameTest gameFrame = new FrameTest();
        gameFrame.setSize(gameWindowLength, gameWindowHeight);
        gameFrame.setTitle("Frame Test- by Me");
        JButton gameButton =  new JButton("Start Game");
        gameButton.add(gameFrame);
        gameButton.setLocation(250, 250);
        gameButton.setVisible(true);
        gameFrame.setVisible(true);

    }


}

Ответы [ 4 ]

6 голосов
/ 15 февраля 2012

Вам нужно добавить кнопку в рамку, попробуйте gameFrame.add(gameButton);

4 голосов
/ 15 февраля 2012

Добавьте его на панель, иначе он никогда не появится. gameFrame.add (gameButton);

4 голосов
/ 15 февраля 2012

вам нужно добавить кнопку в кадр. такие как gameFrame.add(gameButton);

0 голосов
/ 17 февраля 2012

Вы должны добавить кнопку в рамку или панель: например, JFrame.add(gameButton);

...