我正在使用 Java 设计一个 Tron Bike 游戏,其中有两个角色在他们不断移动时在他们身后留下踪迹。
Arena 由 JFrame 中的 JPanel 中的 JPanel 的二维数组组成。我发现这种结构最容易。
我不知道如何通过多个 JPanel 实际移动角色并让它们使用 KeyListener 转动。任何帮助或想法将不胜感激。
这是我的 Arena 课程的代码:
import javax.swing.*;
import java.awt.*;
public class Arena extends JPanel
{
public Arena()
{
setLayout(new GridLayout(15,15,0,0));
setPreferredSize(new Dimension(500,500));
JPanel panel;
JPanel[][] grids = new JPanel[15][15];
for(int r = 0;r<grids.length;r++)
{
for(int c = 0;c<grids[0].length;c++)
{
panel = new JPanel();
panel.setPreferredSize(new Dimension(25,25));
panel.setBorder(BorderFactory.createLineBorder(Color.BLACK));
add(panel);
}
}
}
public static void play()
{
JFrame fr = new JFrame();
fr.setTitle("Arena");
fr.setSize(520,540);
fr.setLocation(400,130);
fr.setLayout(new FlowLayout());
fr.setResizable(false);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container contentPane = fr.getContentPane();
Color col = new Color(0,213,255);
contentPane.setBackground(col);
Arena ar = new Arena();
fr.add(ar);
fr.setVisible(true);
}
}