📄 snake_frame.java
字号:
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;
/**
* 贪吃蛇的界面类
* @author HqkHxgHjj
*
*/
public class Snake_Frame extends JFrame{
/**
* 界面的宽度
*/
final static int SNAKE_FRAME_WIDTH = 400;
/**
* 界面的高度
*/
final static int SNAKE_FRAME_HEIGHT = 600;
/**
* 蛇身的宽度
*/
final static int SNAKE_WIDTH = 8;
//画整条蛇时需要声明的变量开始
/**
* 保存蛇所有节点坐标二维数组
*/
int[][] snake = new int[200][2];
/**
* 蛇身长度变量
*/
int snake_num = 7;
//画整条蛇时需要声明的变量结束
// /**
// * 贪吃蛇的X坐标
// */
// int snake_x = 200;
// /**
// * 贪吃蛇的Y坐标
// */
// int snake_y = 80;
Snake_Frame(){
//初始化蛇的坐标
//初始化蛇头坐标
snake[0][0] = 200;
snake[0][1] = 80;
//初始化蛇身坐标
for(int i = 1 ; i < snake_num ; i++){
snake[i][0] = snake[i - 1][0] + SNAKE_WIDTH;
snake[i][1] = snake[i - 1][1];
}
}
/**
* 界面类画完自己之后调用的方法
* @param g 画笔对象
*/
public void paint(Graphics g) {
//刷新背景开始
//改画笔颜色为背景色
g.setColor(Color.GREEN);
//刷背景
g.fillRect(0, 0,
Snake_Frame.SNAKE_FRAME_WIDTH,
Snake_Frame.SNAKE_FRAME_HEIGHT);
//改画笔颜色为前景色
g.setColor(Color.BLACK);
//刷新背景结束
//画蛇
for(int i = 0 ; i < snake_num ; i++){
g.drawRect(snake[i][0],snake[i][1],SNAKE_WIDTH,SNAKE_WIDTH);
}
//改变蛇身坐标
//休息一下
try {
Thread.sleep(200);
} catch (InterruptedException e) {
e.printStackTrace();
}
//重画
this.repaint();
}
public static void main(String[] args) {
Snake_Frame f = new Snake_Frame();
f.setSize(Snake_Frame.SNAKE_FRAME_WIDTH,
Snake_Frame.SNAKE_FRAME_HEIGHT);
f.setVisible(true);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -