0

我开始了一个新项目,所有代码都是正确的(我认为)并且没有出现任何窗口。没有编译错误,每当我运行程序时都没有任何反应。

import javax.swing.*;
import java.awt.*;

public class Frame extends JFrame{

    public static String title = "Tower Defense";  
    public static Dimension size = new Dimension(700, 550);  

    public static void main(String args[]){ 

        Frame frame = new Frame(); 
    }

    public Frame()  { 

        setTitle(title);
        setSize(size);
        setResizable(false);
        setLocationRelativeTo(null);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    public void init(){

        setVisible(true);
    }
}
4

3 回答 3

4

你永远不会调用init()方法。您的框架如何可见?

只需将您的main方法更改为:

public static void main(String args[]){ 

    Frame frame = new Frame(); 
    frame.init();
}
于 2013-01-31T18:45:33.067 回答
2

您永远不会在框架构造函数中调用 init() :

public Frame() { 
    setTitle(title);
    setSize(size);
    setResizable(false);
    setLocationRelativeTo(null);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    **init();**
}
于 2013-01-31T18:49:54.867 回答
1

init()方法永远不会在你的程序中被调用。

Frame()在构造函数本身中设置可见性。

import javax.swing.*;              
import java.awt.*;        

public class Frame extends JFrame{

public static String title = "Tower Defense";  
public static Dimension size = new Dimension(700, 550);  

public static void main(String args[]){ 

    Frame frame = new Frame(); 
}

public Frame(){

    setTitle(title);
    setSize(size);
    setResizable(false);
    setLocationRelativeTo(null);
    setVisible(true);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

于 2013-10-01T17:02:46.593 回答