hent koordinater
Jeg er ved at udvikle et sæneslagskibe spil med 10x10 felter.. Jeg har et array liggende som indeholder placerede skibe, men skal lave det sådan så når brugeren trykker på knap i felt 1,1 så skal den give knappens koordinater.. det er i metoden checkRamt jeg gerne vil have overførs koordinaterne dynamisk i stedet for det statiske punkt jeg har defineret nu..her er en del af min kode..:
class VandFelt extends JFrame
{
private JButton vandFelt = new JButton();
private JButton skibFelt = new JButton();
JButton[][] fieldContainer = new JButton[10][10];
JButton[][] skibsContainer = new JButton[10][10];
int xcor=0, ycor=0;
public VandFelt()
{
try
{
jbInit();
}
catch(Exception u)
{
u.printStackTrace();
}
}
private void jbInit() throws Exception
{
getContentPane().setLayout(null);
for(int i = 0; i < 10; i++)
{
xcor+=15;
ycor=10;
for(int e = 0; e < 10; e++)
{
ycor+=15;
vandFelt = new JButton();
vandFelt.setBounds(new Rectangle(xcor, ycor, 15, 15));
vandFelt.setBackground(new Color(255, 255, 255));
vandFelt.setBorder(BorderFactory.createLineBorder(Color.black, 1));
vandFelt.setEnabled(false);
vandFelt.addMouseListener(new java.awt.event.MouseAdapter()
{
public void mousePressed(MouseEvent e)
{
click(e);
}
});
fieldContainer[i][e] = vandFelt;
getContentPane().add(fieldContainer[i][e], null);
}
}
.... -> ....
private void click(MouseEvent e)
{
vandFelt = (JButton)e.getSource();
System.out.println(e.getSource());
if(checkRamt(1,1))
vandFelt.setBackground(new Color(255, 0, 0));
else
vandFelt.setBackground(new Color(0, 0, 255));
}
private boolean checkRamt(int a, int b)
{
if(vandFelt.equals(fieldContainer[a][b]))
return true;
return false;
}
