2
public class Start {

public static void main(String[] args) {
    JFrame j = new JFrame();
    final Graphics g = j.getGraphics();
    JButton jb = new JButton("Start");
    j.add(jb);
    jb.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            HeavenlyBiome.spread(g);

        }
    });

}

 }
 ...
 public class HeavenlyBiome {
static Random r = new Random();
public static void spread(Graphics g){
g.setColor(Color.yellow);
int spread = r.nextInt(2)+1;
if (spread==1){
    g.fillRect(0,600,10,10);
}

所以我运行它,一切都正确编译,没有错误,但问题是没有出现窗口!如果它有帮助,这一切都来自一个非默认包,当你使用一个新包时,也许你需要做一些特别的事情?我不知道,因为我是一个新的编码员,所以任何帮助表示赞赏!

4

1 回答 1

3

尝试调用setVisible(true)您的JFrame实例。

JFrame j = new JFrame();
JButton jb = new JButton("Start");
j.add(jb);

j.setVisible(true);

并阅读:http ://docs.oracle.com/javase/tutorial/uiswing/components/frame.html

于 2012-05-24T02:28:23.247 回答