Kako narediti mrežo grafičnega vmesnika v Javi (s slikami)

Kazalo:

Kako narediti mrežo grafičnega vmesnika v Javi (s slikami)
Kako narediti mrežo grafičnega vmesnika v Javi (s slikami)

Video: Kako narediti mrežo grafičnega vmesnika v Javi (s slikami)

Video: Kako narediti mrežo grafičnega vmesnika v Javi (s slikami)
Video: Атлантида. Элита в поисках Бессмертия 2024, Maj
Anonim

Grid na tej stopnji ne naredi nič posebnega, vendar lahko z malo raziskav dodate poslušalce dejanj in malo logike, da naredite preprosto 2D igro, kot so kljukice ali bolj zapletene, kot je Battleship.

Opomba: Ta članek za vse primere uporablja Eclipse, zato se lahko stvari razlikujejo glede na vaš IDE. To bi moralo biti zelo podobno tistemu, kar potrebujete v JCreatorju, vendar je za IDE, ki temelji na grafičnem vmesniku, kot je NetBeans, precej neuporabno, predvsem zaradi metode povleci in spusti NetBeans.

Koraki

Naredite GUI Grid v Javi 1. korak
Naredite GUI Grid v Javi 1. korak

Korak 1. Ustvarite projekt Java

To je precej preprosto. Vklopite IDE in ustvarite nov projekt. Pokličite to, kar želite. Primer bo buttongrid.

To ime sploh ni pomembno, saj bo podano samo ime datoteke

Naredite GUI Grid v Javi 2. korak
Naredite GUI Grid v Javi 2. korak

Korak 2. Ustvarite razred Java z glavno metodo

Ustvarite nov razred in mu dajte ime, kar želite. Primer bo buttongrid. Za uporabnika Eclipse boste želeli označiti polje, imenovano public static void main (string args), zato vam ga ob zagonu ne bo treba vnesti.

To ime je pomembnejše od prejšnjega, ker bo moralo biti samo ena beseda, sicer ne bo uporabno

Naredite GUI Grid v Javi 3. korak
Naredite GUI Grid v Javi 3. korak

Korak 3. Uvoz knjižnic

To prinaša vse podatke, ki jih boste potrebovali za zapis kode v to kodo. Uvoziti morate javax.swing. JFrame, javax.swing. JButton in java.awt. Gridlayout. Ti so postavljeni pred začetkom pouka, nekje v vrsticah med 1 in 3, vrstni red, v katerem so tam, ni pomemben.

Naredite GUI Grid v Javi Korak 4
Naredite GUI Grid v Javi Korak 4

Korak 4. Ustvarite konstruktor

Konstruktor naredi nov primerek razreda buttongrid, ki vsem različnim mrežicam gumbov omogoča ločene informacije. Vse konstruktorje je treba imenovati enako kot njihov razred. Konstruktorji pred tem ne potrebujejo ničesar, vendar se zaradi lažjega sklicevanja tam pogosto postavi "javnost". Konstruktorji so pogosto postavljeni kot prva metoda v razredu, zato gre takoj za imenom razreda, vendar jih je treba postaviti v razred. Konstruktor gumbaste mreže potrebuje parametre, ki so v oklepaju za imenom konstruktorja. Parametri v tem primeru so cela števila 'x' in 'y'.

Naredite GUI Grid v Javi 5. korak
Naredite GUI Grid v Javi 5. korak

Korak 5. Ustvarite okvir:

  1. Okvir mora biti poimenovan. Če želite zagotoviti, da se nanjo lahko sklicuje zunaj metode konstruktorja ButtonGrid, jo postavite zunaj te metode, vendar v razred. Večina spremenljivk je poimenovanih na vrhu razreda tik pred konstruktorjem. Če želite ustvariti nov okvir, vnesite: JFrame frame = new JFrame ();
  2. Znotraj metode konstruktorja moramo zagotoviti, da so vsi gumbi postavljeni v postavitev mreže. To naredimo tako, da postavimo okvir tako, da vnesemo: frame.setLayout (nov GridLayout (x, y));
  3. Ni nujno, da pa se okvir zapre, ko pritisnete gumb 'x' v zgornjem desnem kotu, moramo dodati vrstico: frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE);
  4. Če želimo, da bo okvir ustrezne velikosti, da bo vse ustrezalo, moramo zagnati ukaz pack: frame.pack ();
  5. Nazadnje moramo za okvir narediti viden: frame.setVisible (true);

    Naredite GUI Grid v Javi Korak 6
    Naredite GUI Grid v Javi Korak 6

    Korak 6. Ustvarite mrežo gumbov:

    1. Gumbe, s katerimi uporabnik komunicira, je treba narediti, ker pa ne vemo, koliko jih potrebujemo, jih je treba najprej poimenovati. Tako tik pod vrstico, kjer ustvarjate okvir, ustvarite gumbe: mreža JButton ; Dva niza oglatih oklepajev lahko rečeta, da sta JButtonova v mreži v dvodimenzionalni obliki, če bi bil samo en niz oglatih oklepajev, bi bila to preprosto vrstica JButtonovih, ki še vedno deluje, samo lažje se je sklicevati, kateri gumb je ustvarjen ali v interakciji z njim, ko je dvodimenzionalen.
    2. JButton's so bili poimenovani, vendar moramo še povedati, koliko gumbov je. V konstruktor morate dodati vrstico kode, ki določa znesek: grid = new JButton [width] [length];
    3. Zdaj, ko je bilo ugotovljeno, da bo določeno število gumbov, je treba ustvariti vsakega. Najlažje to storite z dvema zankama, eno za os x, drugo za os y. Znotraj dveh zank naredimo nov gumb, za lažjo uporabo pa primer vstavi besedilo v vsak gumb, tako da vemo, kateri gumb v dvodimenzionalnem nizu je kje. Če želite ustvariti gumb, morate znotraj zanke postaviti mrežo [x] [y] = nov JButton ("("+x+","+y+")");

      Naredite GUI Grid v Javi Korak 7
      Naredite GUI Grid v Javi Korak 7

      Korak 7. Dodajte gumbe v okvir

      Znotraj zanke moramo gumbe postaviti na okvir s preprostim ukazom: frame.add (mreža [x] [y]);

      Naredite GUI Grid v Javi 8. korak
      Naredite GUI Grid v Javi 8. korak

      Korak 8. Naredite ButtonGrid Instance

      V vašem glavnem razredu: nov ButtonGrid (3, 3); Dve trojki sta mreži 3 x 3 in lahko vnesete poljubno dve pozitivni številki.

      Naredite GUI Grid v Javi Korak 9
      Naredite GUI Grid v Javi Korak 9

      Korak 9. Zaženite program

      Če želite to narediti v mrku, pritisnite Ctrl+F11

      Metoda 1 od 1: Koda korakov

      Glavni razred:

      javni razred ButtonGrid {public static void main (String args) {}}

      Uvoz:

      uvoz javax.swing. JFrame; uvoz javax.swing. JButton; import java.awt. GridLayout; ButtonGrid javnega razreda {…

      Koda konstruktorja:

      javni razred ButtonGrid {public ButtonGrid (širina int, dolžina int) {}}…

      Koda okvirja:

      javni razred ButtonGrid {JFrame frame = new Jframe (); public ButtonGrid (širina int, dolžina int) {frame.setLayout (nov GridLayout (širina, dolžina)); frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); frame.setVisible (true); }}…

      Koda mreže gumbov:

      | Okvir JFrame = nov JFrame (); // ustvari okvir JButton mrežo; // imenuje mrežo gumbov public ButtonGrid (širina int, dolžina int) {// konstruktor z dvema parametroma frame.setLayout (nov GridLayout (širina, dolžina)); // nastavimo postavitev mreže okvirja = nov JButton [širina] [dolžina]; // dodeli velikost mreže za (int y = 0; y <dolžina; y ++) {za (int x = 0; x <širina; x ++) {mreža [x] [y] = nov JButton ("("+ x+","+y+")"); frame.add (mreža [x] [y]); // doda gumb v mrežo}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); frame.setVisible (true); }…

      Dodajanje gumbov v okvir:

      for (int y = 0; y <length; y ++) {for (int x = 0; x <width; x ++) {grid [x] [y] = nov JButton ("("+x+","+y+") "); frame.add (mreža [x] [y]); }}…

      Izdelava primerka mreže gumbov:

      public static void main (nizov args) {new ButtonGrid (3, 3); // naredi nov ButtonGrid z 2 parametroma}…

      Končna koda:

      uvoz javax.swing. JFrame; // uvozi knjižnico JFrame uvoz javax.swing. JButton; // uvozi knjižnico JButton uvoz java.awt. GridLayout; // uvozi javni razred knjižnice GridLayout ButtonGrid {JFrame frame = new JFrame (); // ustvari okvir JButton mreže; // imenuje mrežo gumbov public ButtonGrid (širina int, dolžina int) {// konstruktor frame.setLayout (nov GridLayout (širina, dolžina)); // nastavi mrežo postavitve = nov JButton [širina] [dolžina]; // dodeli velikost mreže za (int y = 0; y <dolžina; y ++) {za (int x = 0; x <širina; x ++) {mreža [x] [y] = nov JButton ("("+ x+","+y+")"); // ustvari nov gumb frame.add (mreža [x] [y]); // doda gumb v mrežo}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // nastavi ustrezno velikost okvirja frame.setVisible (true); // naredi okvir viden} javna statična void main (String args) {new ButtonGrid (3, 3); // naredi nov ButtonGrid z 2 parametri}}

      uvoz javax.swing. JFrame; // uvozi knjižnico JFrame uvoz javax.swing. JButton; // uvozi knjižnico JButton uvoz java.awt. GridLayout; // uvozi knjižnico GridLayout

      ButtonGrid javnega razreda {

      Okvir JFrame = nov JFrame (); // ustvari okvir JButton mreže; // imenuje mrežo gumbov

      public ButtonGrid (int width, int length) {// konstruktor frame.setLayout (nov GridLayout (širina, dolžina)); // nastavi mrežo postavitve = nov JButton [širina] [dolžina]; // dodeli velikost mreže za (int y = 0; y <dolžina; y ++) {za (int x = 0; x <širina; x ++) {mreža [x] [y] = nov JButton ("("+ x+","+y+")"); // ustvari nov gumb frame.add (mreža [x] [y]); // doda gumb v mrežo}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // nastavi ustrezno velikost okvirja frame.setVisible (true); // naredi okvir viden} public static void main (String args) {new ButtonGrid (3, 3); // naredi nov ButtonGrid z 2 parametroma}

Priporočena: