【发布时间】:2018-09-04 17:34:06
【问题描述】:
我是 java 初学者,对任何错误的术语表示歉意。
我正在尝试创建一个简单的 2D 游戏,只是为了了解有关 java 工作原理的更多信息。
现在我想知道的是如何使用 2D 数组并绘制它。并且也许添加一个简单的图标(播放器),您可以使用箭头键四处移动。
目前我有以下类 Keybarricade:
public class Keybarricade{
public static void main(String[] args)
{
JFrame obj = new JFrame();
Playingfield playingfield = new Playingfield();
obj.setBounds(0, 0, 900, 900);
obj.setBackground(Color.GRAY);
obj.setResizable(false);
obj.setVisible(true);
obj.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
obj.add(playingfield);
}
和运动场:
public class Playingfield extends JPanel{
private ImageIcon playerIcon;
private int [][] playinggrid = new int[10][10];
private int [] playerX = new int[10];
private int [] playerY = new int[10];
public Playingfield()
{
}
public void paint (Graphics g)
{
//draw border for playingfield
g.setColor(Color.white);
g.drawRect(10, 10, 876, 646);
//draw background for the playingfield
g.setColor(Color.LIGHT_GRAY);
g.fillRect(11, 11, 875, 645);
//draw player imageicon
playerIcon = new ImageIcon("src/images/playerIcon.png");
playerIcon.paintIcon(this, g, playerX[1], playerY[1] );
}
这给出了以下窗口:window I have right now
我想要的是使用 2D 数组来绘制/绘制 10x10 网格,如下所示:window I would like
但遗憾的是我找不到这样做的方法,或者我做了但不明白。 如果有人能指出我正确的方向,那就太棒了!
提前致谢。
【问题讨论】:
标签: java arrays jframe jpanel paint