buona domenica,
ho un problema di passaggio di variabili tra classi:
Ho un vettore bidimensionale, riempiendolo di oggetti derivati dalla classe Quadretto.
Il mio problema sta nel passare quattro variabili che sono
- 2: gli indici di dove si trovi l oggetto in considerazione.
- 2: la larghezza e l altezza del vettore.
Il mio intento è passare quelle quattro variabili nella classe Quadretto e tramite il metodo .selector() dirigerle in altri metodi in base alla posizione dell'oggetto.
Posto il codice:
CLASSE MAIN
CLASSE QUADRETTOcodice:package griglia; import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.Timer; public class Main extends JFrame implements ActionListener { private int height=100; private int width=100; private int [] [] griglia=new int [height][width]; public int getHeight () { return this.height; } public void setHeight (int height) { this.height=height; } public int getWidth () { return this.width; } public void setWidth (int width) { this.width=width; } public Main() { Timer t=new Timer(1000,this); setBounds(10,10,950,950); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLayout(new GridLayout(height,width)); /* for (int i=0; i<(altezza*larghezza); i++){ JLabel l=new JLabel(); l.setOpaque(true); l.setBackground(new Color((int)(Math.random()*255),(int)(Math.random()*255),(int)(Math.random()*255))); this.add(l); } */ for (int c=0;c<height;c++) { for (int r=0;r<width;r++) { griglia [c][r]=Quadretto.selector(c,r); } } t.start(); setVisible(true); } public static void main(String[] args) { new Main(); } public void actionPerformed(ActionEvent e) { this.getContentPane().removeAll(); for (int i=0; i<(this.height*this.width); i++){ JLabel l=new JLabel(); l.setOpaque(true); l.setBackground(new Color((int)(Math.random()*255),(int)(Math.random()*255),(int)(Math.random()*255))); add(l); } setVisible(true); } }
codice:package griglia; public class Quadretto { private int c; private int r; public Quadretto (int c,int r) { this.c=c; this.r=r; } public void selector (c,r) { /* * SELETTORI */ } }

