Ciao e grazie per la risposta!!!.. effettivamente stò utilizzando NetBeans IDE
Ho inserito l'inizializzazione dei componenti nel costruttore, come mi ha consigliato tu e creato un metodo per i controlli..
adesso il fatto è che, per inserire un numero di coppie (a,b) pari al valore che seleziono in JSpinner1, devo fare un ciclo for oppure devo associare un evento alle JTextField, del tipo quando ho raggiunto quel valore le rendo inutilizzabili?
Inoltre vorrei che, quando inserisco i valori a e b nelle due jTextField e clikko sul JButton, se (a,b) soddisfano i controlli del metodo controllDirections(int a, int b), i due valori mi venissero inseriti in due ArrayList, rispettivamente ArrayList<Integer> ascisseDir e ArrayList<Integer>OrdinateDir, quale evento dovrei associare a JButton?

Questo è il metodo del JButton:
codice:
    
public void jButton1ActionPerformed(ActionEvent evt) {
         int a = Integer.parseInt(jTextField1.getText());
         int b = Integer.parseInt(jTextField2.getText());
         if(controlDirections(a,b)==true){
             ascisseDir.add(a);
             ordinateDir.add(b);
         }
     }
e questo il metodo per i controlli:
codice:
public boolean controlDirections(int a, int b) {
         JFrame f = new JFrame("ERRORE!");
         JButton jButton2 = new JButton("OK");
         do {  /* Ascissa della direzione */
             if (a < 0 || a >= n) { // controllo che non ecceda le dim delle colonne della griglia
                 f.add(new JLabel("Errore: Inserire un valore intero dell'ascissa 'a' positivo e minore di " + n));
                  setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
             }
         } while (a < 0 || a >= n);
         do {             /* Ordinata della direzione */
             if (b >= m || b <= -m) { // controllo che non ecceda le dim delle righe della griglia
                 f.add(new JLabel("Errore: Inserire un valore intero per l'ordinata 'b' maggiore di " + (-m) + " e minore " + m));
             }
         } while (b >= m || b <= -m);
                  /* Controllo se le coordinate inserite sono coprimi */
         if (coprimi(a, b) == true) {
             return true;
         } else {
             System.err.println("Errore: le coordinate inserite non sono coprime, inserire delle coordinate con Massimo Comun Divisore uguale a 1.");
             return false;
         }
      }