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 に答える