Come creare una griglia GUI in Java (con immagini)

Sommario:

Come creare una griglia GUI in Java (con immagini)
Come creare una griglia GUI in Java (con immagini)

Video: Come creare una griglia GUI in Java (con immagini)

Video: Come creare una griglia GUI in Java (con immagini)
Video: How To Warp And Distort Objects In Inkscape 2024, Maggio
Anonim

The Grid non fa nulla di speciale in questa fase, ma con un po' di ricerca, puoi aggiungere ascoltatori d'azione e un po' di logica per creare un semplice gioco 2D come tic-tac-toe o giochi più complicati come Battleship.

Nota: questo articolo utilizza Eclipse per tutti gli esempi, quindi le cose potrebbero essere diverse a seconda del tuo IDE. Questo dovrebbe essere molto simile a quello di cui avrai bisogno in JCreator, ma è piuttosto inutile per un IDE basato su GUI come NetBeans, principalmente a causa del metodo di trascinamento della selezione di NetBeans.

Passi

Crea una griglia GUI in Java Passaggio 1
Crea una griglia GUI in Java Passaggio 1

Passaggio 1. Creare un progetto Java

Questo è piuttosto semplice. Accendi il tuo IDE e crea un nuovo progetto. Chiamalo come vuoi. L'esempio sarà buttongrid.

Questo nome non ha alcuna importanza poiché è solo il nome del file che verrà assegnato

Crea una griglia GUI in Java Passaggio 2
Crea una griglia GUI in Java Passaggio 2

Passaggio 2. Creare una classe Java con un metodo principale

Crea una nuova classe e chiamala come vuoi. L'esempio sarà buttongrid. Per un utente Eclipse vorrai spuntare la casella chiamata public static void main(string args), quindi non dovrai digitarla all'avvio.

Questo nome è più importante del precedente perché dovrà essere un'unica parola altrimenti non sarà utilizzabile

Crea una griglia GUI in Java Passaggio 3
Crea una griglia GUI in Java Passaggio 3

Passaggio 3. Importa librerie

Questo porta tutte le informazioni necessarie per scrivere il codice in questo codice. Dovrai importare javax.swing. JFrame, javax.swing. JButton e java.awt. Gridlayout. Questi vengono messi prima dell'inizio della lezione, da qualche parte sulle righe tra 1 e 3, l'ordine in cui sono lì non ha importanza.

Crea una griglia GUI in Java Passaggio 4
Crea una griglia GUI in Java Passaggio 4

Passaggio 4. Creare un costruttore

Il costruttore crea una nuova istanza della classe buttongrid consentendo a molte griglie di pulsanti diverse di avere informazioni separate. Tutti i costruttori devono avere lo stesso nome della loro classe. I costruttori non hanno bisogno di nulla prima di esso, ma spesso "pubblico" viene messo lì per facilità di riferimento. I costruttori sono spesso posizionati come primo metodo in una classe, quindi va subito dopo il nome della classe, tuttavia deve essere posizionato all'interno della classe. Il costruttore di buttongrid necessita di parametri, che sono messi tra parentesi quadre dopo il nome del costruttore. I parametri in questo esempio sono i numeri interi 'x' e 'y'.

Crea una griglia GUI in Java Passaggio 5
Crea una griglia GUI in Java Passaggio 5

Passaggio 5. Crea cornice:

  1. La cornice deve essere nominata. Per assicurarti che possa essere referenziato al di fuori del metodo del costruttore ButtonGrid, lo metti al di fuori di quel metodo, ma all'interno della classe. La maggior parte delle variabili viene nominata all'inizio della classe subito prima del costruttore. Per creare un nuovo frame digita: JFrame frame = new JFrame();
  2. All'interno del metodo del costruttore dobbiamo assicurarci che tutti i pulsanti siano inseriti nel layout della griglia. Per fare ciò impostiamo il layout del frame digitando: frame.setLayout(new GridLayout(x, y));
  3. Non necessariamente obbligatorio, ma per chiudere il frame quando premi il pulsante 'x' nell'angolo in alto a destra dobbiamo aggiungere la riga: frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE);
  4. Per fare in modo che il frame abbia una dimensione adeguata in modo che tutto si adatti dobbiamo eseguire il comando pack: frame.pack();
  5. Infine per il frame dobbiamo renderlo visibile: frame.setVisible(true);

    Crea una griglia GUI in Java Passaggio 6
    Crea una griglia GUI in Java Passaggio 6

    Passaggio 6. Crea griglia di pulsanti:

    1. I pulsanti con cui l'utente interagisce devono essere realizzati, ma poiché non sappiamo quanti ne abbiamo bisogno, devono essere nominati per primi. Quindi, proprio sotto la linea in cui crei il frame, crea i pulsanti: JButton grid; Le due serie di parentesi quadre sono lì per dire che i JButton nella griglia sono mantenuti in un formato bidimensionale, se ci fosse solo una serie di parentesi quadre allora sarebbe semplicemente una linea di JButton, che funziona ancora, è solo più facile fare riferimento a quale pulsante viene creato o con cui si interagisce quando è bidimensionale.
    2. I JButton sono stati nominati, ma dobbiamo ancora dire quanti pulsanti ci sono. Devi aggiungere una riga di codice nel costruttore che imposta la quantità: grid=new JButton[width][length];
    3. Ora che è stato determinato che ci sarà un certo numero di pulsanti, ognuno deve essere creato. Il modo più semplice per farlo è con due cicli for, uno per l'asse x, uno per l'asse y. All'interno dei due loop creiamo un nuovo pulsante e, per facilità di riferimento, l'esempio inserisce del testo all'interno di ciascun pulsante in modo da sapere quale pulsante nell'array bidimensionale si trova dove. Per creare un pulsante, all'interno del ciclo devi mettere grid[x][y] = new JButton ("("+x+", "+y+")");

      Crea una griglia GUI in Java Passaggio 7
      Crea una griglia GUI in Java Passaggio 7

      Passaggio 7. Aggiungi pulsanti alla cornice

      All'interno del loop dobbiamo inserire i pulsanti sul frame con un semplice comando: frame.add(grid[x][y]);

      Crea una griglia GUI in Java Passaggio 8
      Crea una griglia GUI in Java Passaggio 8

      Passaggio 8. Crea un'istanza di ButtonGrid

      Nella tua classe principale digita: new ButtonGrid(3, 3); I due tre formano una griglia 3 per 3 e possono essere inseriti due numeri positivi qualsiasi.

      Crea una griglia GUI in Java Passaggio 9
      Crea una griglia GUI in Java Passaggio 9

      Passaggio 9. Esegui il programma

      Per farlo in Eclipse premi Ctrl+F11

      Metodo 1 di 1: codice dei passaggi

      La classe principale:

      public class ButtonGrid { public static void main(String args) { } }

      Importazioni:

      import javax.swing. JFrame; import javax.swing. JButton; import java.awt. GridLayout; public class ButtonGrid { …

      Codice costruttore:

      public class ButtonGrid { public ButtonGrid(int larghezza, int lunghezza){ } } …

      Codice telaio:

      public class ButtonGrid { JFrame frame=new Jframe(); public ButtonGrid(larghezza int, lunghezza int){ frame.setLayout(new GridLayout(larghezza, lunghezza)); frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true); } } …

      Codice griglia pulsanti:

      |JFrame frame=nuovo JFrame(); //crea il frame JButton griglia; //nomina la griglia dei pulsanti public ButtonGrid(int width, int length){ //costruttore con 2 parametri frame.setLayout(new GridLayout(width, length)); //imposta il layout del frame grid=new JButton[width][length]; //alloca la dimensione della griglia for(int y=0; y<lunghezza; y++){ for(int x=0; x<larghezza; x++){ grid[x][y]=new JButton("("+ x+", "+y+")"); frame.add(grid[x][y]); //aggiunge il pulsante alla griglia } } frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); frame.pack(); frame.setVisible(true); } …

      Aggiunta di pulsanti alla cornice:

      for(int y=0; y<lunghezza; y++){ for(int x=0; x<larghezza; x++){ grid[x][y]=new JButton("("+x+", "+y+")"); frame.add(grid[x][y]); } } …

      Creazione di un'istanza della griglia di pulsanti:

      public static void main(String args) { new ButtonGrid(3, 3);//crea un nuovo ButtonGrid con 2 parametri } …

      Codice finale:

      import javax.swing. JFrame; //importa la libreria JFrame import javax.swing. JButton; //importa la libreria JButton import java.awt. GridLayout; //importa la classe pubblica della libreria GridLayout ButtonGrid { JFrame frame=new JFrame(); //crea il frame JButton griglia; //nomina la griglia dei pulsanti public ButtonGrid(int width, int length){ //constructor frame.setLayout(new GridLayout(width, length)); //set layout grid=new JButton[width][length]; //alloca la dimensione della griglia for(int y=0; y<lunghezza; y++){ for(int x=0; x<larghezza; x++){ grid[x][y]=new JButton("("+ x+", "+y+")"); //crea un nuovo pulsante frame.add(grid[x][y]); //aggiunge il pulsante alla griglia } } frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); frame.pack(); //imposta la dimensione appropriata per il frame frame.setVisible(true); //rende visibile il frame } public static void main(String args) { new ButtonGrid(3, 3);//crea un nuovo ButtonGrid con 2 parametri } }

      import javax.swing. JFrame; //importa la libreria JFrame import javax.swing. JButton; //importa la libreria JButton import java.awt. GridLayout; //importa la libreria GridLayout

      classe pubblica ButtonGrid {

      JFrame frame=new JFrame(); //crea il frame JButton griglia; //nomina la griglia dei pulsanti

      public ButtonGrid(int width, int length){ //costruttore frame.setLayout(new GridLayout(width, length)); //set layout grid=new JButton[width][length]; //alloca la dimensione della griglia for(int y=0; y<lunghezza; y++){ for(int x=0; x<larghezza; x++){ grid[x][y]=new JButton("("+ x+", "+y+")"); //crea un nuovo pulsante frame.add(grid[x][y]); //aggiunge il pulsante alla griglia } } frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); frame.pack(); //imposta la dimensione appropriata per il frame frame.setVisible(true); //rende visibile il frame } public static void main(String args) { new ButtonGrid(3, 3);//crea un nuovo ButtonGrid con 2 parametri }

Consigliato: