package cn.sxt.game;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
public class PlayGameFrame3 {
}
public class PlayGameFrame extends JFrame {
Image plane=GameUtil.getImage("images/plane.png");
Image bg=GameUtil.getImage("images/bg.jpg");
int planeX=250,planeY=250;
@Override
public void paint(Graphics g) {//自动被调用,g相当于一只画笔
g.drawImage(bg,0, 0, null);
g.drawImage(plane, planeX, planeY, null);
planeX++;
}
//帮助我们反复重画窗口!
class PaintThread extends Thread{
@Override
public void run() {
while(true) {
System.out.println("窗口画一次");//控制以不显示“窗口画一次”
repaint();//重画
try {
Thread.sleep(40);//40毫秒
}catch(InterruptedException e) {
e.printStackTrace();
}
}
}
}
/**
* 初始化窗口
*/
public void launchFrame() {//主窗口
this.setTitle("尚学堂——自由人作品");//标题栏
this.setVisible(true);//显示窗口
this.setSize(250, 250);//窗口的宽和高
this.setLocation(250, 250);//窗口的坐标
//添加关闭窗口的代码
this.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
new PaintThread().start();//启动重画窗口的线程
}
}
只显示窗口的背景,不显示飞机,是什么原因?