private void initGamePanel() { jPanel = new JPanel() { public void paint(Graphics g) { //设置颜色 g.setColor(Color.blue); //清空棋盘 g.clearRect(0, 0, 600, 600); //绘制横线和竖线 for (int i = 0; i <= 40; i++) { //横线 g.drawLine(0, i * 15, 600, i * 15); //竖线 g.drawLine(i * 15, 0, i * 15, 600); } //绘制蛇 LinkedList<Node> body = sanke.getBody(); for (Node node : body) { g.fillRect(node.getX() * 15, node.getY() * 15, 15, 15); } //绘制食物 g.fillRect(food.getX() * 15, food.getY() * 15, 15, 15); // setBackground(Color.green); } };如何这段代码中加入图片
时间: 2024-02-10 14:05:07 浏览: 54
可以通过使用 ImageIcon 类加载图片,并在 paint() 方法中使用 Graphics 的 drawImage() 方法来绘制图片。以下是一个在蛇身上绘制图片的示例代码:
```
private void initGamePanel() {
jPanel = new JPanel() {
private ImageIcon imageIcon = new ImageIcon("snake.png");
public void paint(Graphics g) {
// 设置颜色
g.setColor(Color.blue);
// 清空棋盘
g.clearRect(0, 0, 600, 600);
// 绘制横线和竖线
for (int i = 0; i <= 40; i++) {
// 横线
g.drawLine(0, i * 15, 600, i * 15);
// 竖线
g.drawLine(i * 15, 0, i * 15, 600);
}
// 绘制蛇
LinkedList<Node> body = sanke.getBody();
for (Node node : body) {
g.drawImage(imageIcon.getImage(), node.getX() * 15, node.getY() * 15, 15, 15, null);
}
// 绘制食物
g.fillRect(food.getX() * 15, food.getY() * 15, 15, 15);
//
setBackground(Color.green);
}
};
}
```
在此示例代码中,我们使用 ImageIcon 类加载了一张名为 "snake.png" 的图片,并在 paint() 方法中使用 drawImage() 方法将图片绘制在蛇的身上。你可以根据需要修改代码以适应你自己的需求。
阅读全文