Java学习-GUI编程-贪吃蛇之界面绘制
帧的概念:如果时间片足够小就变成了动画,拆开是静态的图片。
键盘监听
定时器 Timer
素材下载并导入
连接:https://pan.baidu.com/s/1XSMKSB_V5kHFVi7mkBNjjg
提取码:qbm4
StartGame
package Snake;
import javax.swing.*;
public class StartGame {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setVisible(true);
frame.setBounds(100,100,900,720);
frame.setResizable(false);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.add(new GamePanel());
}
}
GamePanel
package Snake;
import javax.swing.*;
import java.awt.*;
public class GamePanel extends JPanel {
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
this.setBackground(Color.white);
Data.header.paintIcon(this,g,25,11);//头部广告栏
g.fillRect(25,75,850,600);//默认游戏界面
}
}
Data
package Snake;
import javax.swing.*;
import java.net.URL;
public class Data {
public static URL headerURL = Data.class.getResource("statics/header.png");
public static ImageIcon header = new ImageIcon(headerURL);
public static URL upURL = Data.class.getResource("statics/up.png");
public static URL downURL = Data.class.getResource("statics/down.png");
public static URL leftURL = Data.class.getResource("statics/left.png");
public static URL rightURL = Data.class.getResource("statics/right.png");
public static ImageIcon up = new ImageIcon(upURL);
public static ImageIcon down = new ImageIcon(downURL);
public static ImageIcon left = new ImageIcon(leftURL);
public static ImageIcon right = new ImageIcon(rightURL);
public static URL bodyURL = Data.class.getResource("statics/body.png");
public static ImageIcon body = new ImageIcon(bodyURL);
public static URL foodURL = Data.class.getResource("statics/food.png");
public static ImageIcon food = new ImageIcon(foodURL);
}