valiables globales?
Hola:
Tengo un problema, no se como hacer una cosa. Yo quiero declarar algo
parecido a una variable global,(dos variables globales, x, y) eso valores
iran cambiando según que botones pulses y luego conseguir el valor
que tienen desde otra clase (con un metodo que haga return x). Gracias.
__________________________________________________
public class SudokuFrame extends JFrame
{
private int x;
private int y;
public void guardar_koordenadas(int a, int b)
{
x=a;
y=b;
}
void jButton12_actionPerformed(ActionEvent e)
{
zenbakiaAukeratuFrame zbk12 =new zenbakiaAukeratuFrame(ki,jButton12);
this.guardar_koordenadas(1,0);
ki.botoiak_ezabatu(zbk12);
zbk12.setVisible(true);
}
public int izuli_koorx()
{
return x;
}
public int izuli_koory()
{
return y;
}
}
______________________________________________________
public class zenbakiaAukeratuFrame extends JFrame
{
public zenbakiaAukeratuFrame(kudeatzaileaInterfazea pki,JButton botoia)
{
try
{
ki=pki;
b= botoia;
suf= new SudokuFrame(ki);
jbInit();
}
catch(Exception e)
{
e.printStackTrace();
}
}
private void jbInit() throws Exception
{
jButton1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jButton1_actionPerformed(e);
}
});
void jButton1_actionPerformed(ActionEvent e)
{
System.out.println(suf.izuli_koorx());
System.out.println(suf.izuli_koory());
if (botoia_dago() > 0)
{
ki.zutabean_ezabatu(botoia_dago()-1,false);
ki.errenkadan_ezabatu(botoia_dago()-1,false);
}
b.setText("1");
ki.zutabean_ezabatu(0,true);
ki.errenkadan_ezabatu(0,true);
this.setVisible(false);
suf.matrize[suf.izuli_koorx()][suf.izuli_koory()].inprimitu();
}
Tengo un problema, no se como hacer una cosa. Yo quiero declarar algo
parecido a una variable global,(dos variables globales, x, y) eso valores
iran cambiando según que botones pulses y luego conseguir el valor
que tienen desde otra clase (con un metodo que haga return x). Gracias.
__________________________________________________
public class SudokuFrame extends JFrame
{
private int x;
private int y;
public void guardar_koordenadas(int a, int b)
{
x=a;
y=b;
}
void jButton12_actionPerformed(ActionEvent e)
{
zenbakiaAukeratuFrame zbk12 =new zenbakiaAukeratuFrame(ki,jButton12);
this.guardar_koordenadas(1,0);
ki.botoiak_ezabatu(zbk12);
zbk12.setVisible(true);
}
public int izuli_koorx()
{
return x;
}
public int izuli_koory()
{
return y;
}
}
______________________________________________________
public class zenbakiaAukeratuFrame extends JFrame
{
public zenbakiaAukeratuFrame(kudeatzaileaInterfazea pki,JButton botoia)
{
try
{
ki=pki;
b= botoia;
suf= new SudokuFrame(ki);
jbInit();
}
catch(Exception e)
{
e.printStackTrace();
}
}
private void jbInit() throws Exception
{
jButton1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jButton1_actionPerformed(e);
}
});
void jButton1_actionPerformed(ActionEvent e)
{
System.out.println(suf.izuli_koorx());
System.out.println(suf.izuli_koory());
if (botoia_dago() > 0)
{
ki.zutabean_ezabatu(botoia_dago()-1,false);
ki.errenkadan_ezabatu(botoia_dago()-1,false);
}
b.setText("1");
ki.zutabean_ezabatu(0,true);
ki.errenkadan_ezabatu(0,true);
this.setVisible(false);
suf.matrize[suf.izuli_koorx()][suf.izuli_koory()].inprimitu();
}
Supongo que te refieres a variables independientes del objeto. Si lo que quieres son variables del objeto, defínelas static, por ejemplo:
public class SudokuFrame extends JFrame {
...
private static int x;
...
public static int getX(){
return x;
}
...
De este modo puedes obtenerlas desde otra clase llamando a:
SudokuFrame.getX();
Ten en cuenta que cualquier objeto de dicha clase puede leerla y cambiarla, de modo que si quieres uno para cada clase, deberías no utilizar static y así definir una para cada objeto. Espero que te sirva.
public class SudokuFrame extends JFrame {
...
private static int x;
...
public static int getX(){
return x;
}
...
De este modo puedes obtenerlas desde otra clase llamando a:
SudokuFrame.getX();
Ten en cuenta que cualquier objeto de dicha clase puede leerla y cambiarla, de modo que si quieres uno para cada clase, deberías no utilizar static y así definir una para cada objeto. Espero que te sirva.
