Kako napraviti GUI mrežu na Javi (sa slikama)

Sadržaj:

Kako napraviti GUI mrežu na Javi (sa slikama)
Kako napraviti GUI mrežu na Javi (sa slikama)

Video: Kako napraviti GUI mrežu na Javi (sa slikama)

Video: Kako napraviti GUI mrežu na Javi (sa slikama)
Video: Zaradite 0,20 $ SVAKO 60 sekundi (čudan trik AUTOPILOT) 2024, Maj
Anonim

Grid u ovoj fazi ne čini ništa posebno, ali uz malo istraživanja možete dodati slušatelje akcija i malo logike kako biste napravili jednostavnu 2D igru poput tic-tac-toe-a ili složeniju poput Battleship-a.

Napomena: Ovaj članak koristi Eclipse za sve primjere, pa stvari mogu biti različite ovisno o vašem IDE -u. Ovo bi trebalo biti vrlo slično onome što će vam trebati u JCreatoru, ali je prilično beskorisno za IDE zasnovan na grafičkom sučelju poput NetBeansa, uglavnom zbog metode povlačenja i ispuštanja NetBeansa.

Koraci

Napravite GUI mrežu u Javi Korak 1
Napravite GUI mrežu u Javi Korak 1

Korak 1. Kreirajte Java projekat

Ovo je prilično jednostavno. Uključite IDE i kreirajte novi projekt. Nazovite to kako god želite. Primjer će biti buttongrid.

Ovo ime uopće nije važno jer će mu biti dodijeljen samo naziv datoteke

Napravite GUI mrežu u Javi Korak 2
Napravite GUI mrežu u Javi Korak 2

Korak 2. Kreirajte Java klasu sa glavnom metodom

Kreirajte novu klasu i dajte joj ime kako želite. Primjer će biti buttongrid. Za korisnika Eclipsea želite označiti okvir koji se zove public static void main (string args), tako da ga nećete morati upisivati pri pokretanju.

Ovaj naziv je važniji od prethodnog jer će morati biti jedna riječ, inače neće biti upotrebljiv

Napravite GUI mrežu u Javi Korak 3
Napravite GUI mrežu u Javi Korak 3

Korak 3. Uvezite biblioteke

Ovo donosi sve informacije koje su vam potrebne za pisanje koda u ovaj kôd. Morat ćete uvesti javax.swing. JFrame, javax.swing. JButton i java.awt. Gridlayout. Oni se stavljaju prije početka nastave, negdje u redovima između 1 i 3, redoslijed u kojem se tamo nalaze nije bitan.

Napravite GUI mrežu u Javi Korak 4
Napravite GUI mrežu u Javi Korak 4

Korak 4. Kreirajte konstruktor

Konstruktor pravi novu instancu klase buttongrid dopuštajući da mnoge različite rešetke dugmadi imaju zasebne informacije. Svi konstruktori moraju biti imenovani isto kao i njihova klasa. Konstruktorima prije toga ne treba ništa, ali se radi lakšeg snalaženja često stavlja 'javnost'. Konstruktori se često postavljaju kao prva metoda u klasi, pa ide odmah nakon imena klase, ali se mora postaviti unutar klase. Konstruktoru gumene mreže potrebni su parametri koji se stavljaju u zagrade iza imena konstruktora. Parametri u ovom primjeru su cijeli brojevi 'x' i 'y'.

Napravite GUI mrežu u Javi Korak 5
Napravite GUI mrežu u Javi Korak 5

Korak 5. Kreirajte okvir:

  1. Okvir mora biti imenovan. Da biste bili sigurni da se može referencirati izvan metode konstruktora ButtonGrid, postavite ga izvan te metode, ali unutar klase. Većina varijabli se imenuje na vrhu klase neposredno prije konstruktora. Za kreiranje novog okvira ukucajte: JFrame frame = new JFrame ();
  2. Unutar metode konstruktora moramo osigurati da su svi gumbi postavljeni u raspored mreže. Da bismo to učinili, postavljamo izgled okvira upisivanjem: frame.setLayout (novi GridLayout (x, y));
  3. Nije nužno obavezno, ali kako bismo okvir zatvorili kada pritisnete dugme 'x' u gornjem desnom kutu, moramo dodati redak: frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE);
  4. Da bi okvir bio odgovarajuće veličine kako bi mu sve odgovaralo, moramo pokrenuti naredbu pack: frame.pack ();
  5. Na kraju, za okvir moramo ga učiniti vidljivim: frame.setVisible (true);

    Napravite GUI mrežu u Javi Korak 6
    Napravite GUI mrežu u Javi Korak 6

    Korak 6. Kreirajte mrežu dugmadi:

    1. Dugmad s kojima korisnik komunicira moraju biti napravljeni, ali budući da ne znamo koliko nam je potrebno, prvo ih moramo imenovati. Dakle, odmah ispod linije na kojoj kreirate okvir kreirajte dugmad: JButton grid; Dva seta uglatih zagrada govore da se JButtonovi u mreži drže u dvodimenzionalnom formatu, da postoji samo jedan skup uglatih zagrada onda bi to jednostavno bila linija JButtonovih, koja još uvijek radi, to je samo lakše je referencirati koje se dugme stvara ili s njime komunicira kada je dvodimenzionalno.
    2. JButton je dobio ime, ali još moramo reći koliko dugmadi postoji. Morate dodati red koda u konstruktor koji postavlja iznos: grid = new JButton [width] [length];
    3. Sada kada je utvrđeno da će postojati određeni broj gumba, svaki se mora stvoriti. Najlakši način da to učinite je s dvije petlje, jedna za x-os, jedna za y-os. Unutar dvije petlje pravimo novo dugme, a radi lakšeg snalaženja primjer stavlja tekst unutar svakog dugmeta tako da znamo koje se dugme u dvodimenzionalnom nizu nalazi. Da biste kreirali dugme, unutar petlje morate staviti rešetku [x] [y] = novi JButton ("("+x+","+y+")");

      Napravite GUI mrežu u Javi Korak 7
      Napravite GUI mrežu u Javi Korak 7

      Korak 7. Dodajte dugmad u okvir

      Unutar petlje moramo staviti dugmad na okvir jednostavnom naredbom: frame.add (mreža [x] [y]);

      Napravite GUI mrežu u Javi Korak 8
      Napravite GUI mrežu u Javi Korak 8

      Korak 8. Napravite ButtonGrid Instance

      U vašoj glavnoj klasi: new ButtonGrid (3, 3); Dvije trojke čine mrežu 3 x 3, a bilo koja dva pozitivna broja mogu se unijeti tamo.

      Napravite GUI mrežu u Javi Korak 9
      Napravite GUI mrežu u Javi Korak 9

      Korak 9. Pokrenite program

      Da biste to učinili u pomrčini, pritisnite Ctrl+F11

      Metoda 1 od 1: Kodovi koraka

      Glavna klasa:

      javna klasa ButtonGrid {public static void main (String args) {}}

      Uvoz:

      import javax.swing. JFrame; import javax.swing. JButton; import java.awt. GridLayout; ButtonGrid javne klase {…

      Konstruktorski kod:

      javna klasa ButtonGrid {public ButtonGrid (int širina, int dužina) {}}…

      Okvir koda:

      javna klasa ButtonGrid {JFrame frame = new Jframe (); public ButtonGrid (int width, int length) {frame.setLayout (novi GridLayout (širina, dužina)); frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); frame.setVisible (true); }}…

      Kôd mreže dugmadi:

      | JFrame frame = new JFrame (); // kreira okvir JButton rešetke; // imenuje mrežu dugmadi public ButtonGrid (int width, int length) {// konstruktor sa 2 parametra frame.setLayout (novi GridLayout (širina, dužina)); // postavlja raspored mreže okvira = novi JButton [širina] [dužina]; // dodjeljuje veličinu mreže za (int y = 0; y <dužina; y ++) {za (int x = 0; x <širina; x ++) {grid [x] [y] = novi JButton ("("+ x+","+y+")"); frame.add (rešetka [x] [y]); // dodaje dugme u mrežu}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); frame.setVisible (true); }…

      Dodavanje dugmadi u okvir:

      for (int y = 0; y <length; y ++) {for (int x = 0; x <width; x ++) {grid [x] [y] = new JButton ("("+x+","+y+") "); frame.add (rešetka [x] [y]); }}…

      Izrada instance mreže dugmadi:

      public static void main (String args) {new ButtonGrid (3, 3); // pravi novi ButtonGrid sa 2 parametra}…

      Završni kod:

      import javax.swing. JFrame; // uvozi JFrame biblioteku import javax.swing. JButton; // uvozi JButton biblioteku import java.awt. GridLayout; // uvozi javnu klasu biblioteke GridLayout ButtonGrid {JFrame frame = new JFrame (); // kreira okvir JButton rešetke; // imenuje mrežu dugmadi public ButtonGrid (int širina, int dužina) {// konstruktor frame.setLayout (novi GridLayout (širina, dužina)); // postavljanje mreže rasporeda = novi JButton [širina] [dužina]; // dodjeljuje veličinu mreže za (int y = 0; y <dužina; y ++) {za (int x = 0; x <širina; x ++) {grid [x] [y] = novi JButton ("("+ x+","+y+")"); // kreira novu tipku frame.add (rešetka [x] [y]); // dodaje dugme u mrežu}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // postavlja odgovarajuću veličinu za frame frame.setVisible (true); // čini okvir vidljivim} public static void main (String args) {new ButtonGrid (3, 3); // čini novi ButtonGrid sa 2 parametra}}

      import javax.swing. JFrame; // uvozi JFrame biblioteku import javax.swing. JButton; // uvozi biblioteku JButton import java.awt. GridLayout; // uvozi biblioteku GridLayout

      javni razred ButtonGrid {

      JFrame okvir = novi JFrame (); // kreira okvir JButton rešetke; // imenuje mrežu dugmadi

      public ButtonGrid (int width, int length) {// konstruktor frame.setLayout (novi GridLayout (širina, dužina)); // postavljanje mreže izgleda = novi JButton [širina] [dužina]; // dodjeljuje veličinu mreže za (int y = 0; y <dužina; y ++) {za (int x = 0; x <širina; x ++) {grid [x] [y] = novi JButton ("("+ x+","+y+")"); // kreira novu tipku frame.add (rešetka [x] [y]); // dodaje dugme u mrežu}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // postavlja odgovarajuću veličinu okvira frame.setVisible (true); // čini okvir vidljivim} public static void main (String args) {new ButtonGrid (3, 3); // čini novi ButtonGrid sa 2 parametra}

Preporučuje se: