我是Java游戏编程的新手,特别是在图形方面,因此我想就如何用Java在图形上实现以下游戏寻求一些建议。
游戏很简单,它显示一个方块,进一步划分为2x2盒子,游戏玩法是将总共44个筹码放入这4个盒子中,用户应该可以拖放筹码从一个盒子到另一个盒子。
就是这样!我的问题:
非常感谢。
答案 0 :(得分:2)
筹码可以通过添加到JLabel的图标来表示。
正方形可以用JPanel表示。
首先阅读How to Use Icons上的Swing教程中的部分。还有其他感兴趣的部分:如何使用面板,使用布局管理器,如何编写MouseListener,拖放部分可能。
答案 1 :(得分:-1)
我会使用Canvas并覆盖绘图(Graphics g)并使用它绘制各种元素。然后你可以用计时器或游戏循环调用repaint()。
public class MyCanvas extends Canvas
{
public void gameLoop()
{
//Don't do it this way, this is just a quick example.
//Instead look up better game loop options.
while (true)
{
repaint(); //automatically calls paintComponent
Thread.yield();
}
}
//Put all the stuff that gets drawn in here.
//@Override
public void paint(Graphics g)
{
super.paint(g);
for (int i = 0; i < chips.size(); i++)
{
chips.get(i).draw(g);
}
}
}
public class Chip
{
private int x;
private int y;
public void draw(Graphics g)
{
g.setColor(Color.BROWN);
g.fillRect(x, y, 50, 50);
//etc.
}
}