Jak vytvořit GUI mřížku v Javě (s obrázky)

Obsah:

Jak vytvořit GUI mřížku v Javě (s obrázky)
Jak vytvořit GUI mřížku v Javě (s obrázky)

Video: Jak vytvořit GUI mřížku v Javě (s obrázky)

Video: Jak vytvořit GUI mřížku v Javě (s obrázky)
Video: Inkscape - obrázek na křivky (vektorizace) 2024, Smět
Anonim

Grid v této fázi nedělá nic zvláštního, ale s trochou výzkumu můžete přidat akční posluchače a trochu logiky, abyste vytvořili jednoduchou 2D hru jako tic-tac-toe nebo složitější hry jako Battleship.

Poznámka: Tento článek používá Eclipse pro všechny příklady, takže věci se mohou lišit v závislosti na vašem IDE. To by mělo být velmi podobné tomu, co budete potřebovat v JCreatoru, ale je to docela zbytečné pro IDE založené na GUI, jako je NetBeans, hlavně kvůli drag and drop metodě NetBeans.

Kroky

Vytvořte GUI Grid v Javě Krok 1
Vytvořte GUI Grid v Javě Krok 1

Krok 1. Vytvořte projekt Java

To je celkem jednoduché. Zapněte IDE a vytvořte nový projekt. Říkejte tomu jakkoli chcete. Příkladem bude buttongrid.

Na tomto názvu nezáleží, protože je to pouze název souboru, který bude uveden

Vytvořte GUI Grid v Javě Krok 2
Vytvořte GUI Grid v Javě Krok 2

Krok 2. Vytvořte třídu Java hlavní metodou

Vytvořte novou třídu a pojmenujte ji, jak chcete. Příkladem bude buttongrid. Pro uživatele Eclipse budete chtít zaškrtnout políčko s názvem public static void main (string args), takže jej nebudete muset zadávat při spuštění.

Toto jméno je důležitější než předchozí, protože bude muset být jako jediné slovo, jinak nebude použitelné

Vytvořte GUI Grid v Javě Krok 3
Vytvořte GUI Grid v Javě Krok 3

Krok 3. Import knihoven

To přináší všechny informace, které budete potřebovat k napsání kódu do tohoto kódu. Budete muset importovat javax.swing. JFrame, javax.swing. JButton a java.awt. Gridlayout. Ty jsou umístěny před začátkem třídy, někde na řádcích mezi 1 až 3, na pořadí, ve kterém jsou, nezáleží.

Vytvořte GUI Grid v Javě Krok 4
Vytvořte GUI Grid v Javě Krok 4

Krok 4. Vytvořte konstruktor

Konstruktor vytváří novou instanci třídy buttongrid, která umožňuje mnoha různým tlačítkovým mřížkám, aby všechny měly samostatné informace. Všechny konstruktory musí být pojmenovány stejně jako jejich třída. Konstruktéři před tím nic nepotřebují, ale „public“je tam často uváděn pro snadnější orientaci. Konstruktory jsou často umístěny jako první metoda ve třídě, takže jde hned za název třídy, ale musí být umístěn uvnitř třídy. Konstruktor knoflíkové mřížky potřebuje parametry, které jsou uvedeny v závorkách za názvem konstruktoru. Parametry v tomto příkladu jsou celá čísla 'x' a 'y'.

Vytvořte GUI Grid v Javě Krok 5
Vytvořte GUI Grid v Javě Krok 5

Krok 5. Vytvořit rámeček:

  1. Rám musí být pojmenován. Abyste se ujistili, že na něj lze odkazovat mimo metodu konstruktoru ButtonGrid, umístíte jej mimo tuto metodu, ale do třídy. Většina proměnných je pojmenována v horní části třídy těsně před konstruktorem. Chcete -li vytvořit nový rámec, zadejte: JFrame frame = new JFrame ();
  2. Uvnitř metody konstruktoru musíme zajistit, aby všechna tlačítka byla vložena do rozložení mřížky. Za tímto účelem nastavíme rozložení rámce zadáním: frame.setLayout (new GridLayout (x, y));
  3. Není to nutně povinné, ale aby se rám zavřel, když stisknete tlačítko 'x' v pravém horním rohu, musíme přidat řádek: frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE);
  4. Aby rámeček měl správnou velikost, aby vše sedělo, potřebujeme spustit příkaz pack: frame.pack ();
  5. Nakonec pro rámeček potřebujeme, aby byl viditelný: frame.setVisible (true);

    Vytvořte GUI Grid v Javě Krok 6
    Vytvořte GUI Grid v Javě Krok 6

    Krok 6. Vytvořte mřížku tlačítek:

    1. Je třeba vytvořit tlačítka, se kterými uživatel interaguje, ale protože nevíme, kolik jich potřebujeme, musí být pojmenována jako první. Takže přímo pod čarou, kde vytvoříte rámeček, vytvořte tlačítka: mřížka JButton ; Dvě sady hranatých závorek říkají, že JButtonovy v mřížce jsou udržovány v dvourozměrném formátu, pokud by existovala pouze jedna sada hranatých závorek, pak by to byla jednoduše řada JButtonových, která stále funguje, je to prostě snazší odkazovat na to, které tlačítko se vytváří nebo s ním interaguje, když je dvourozměrné.
    2. JButton's byly pojmenovány, ale stále musíme říci, kolik tlačítek existuje. Do konstruktoru je třeba přidat řádek kódu, který nastavuje částku: grid = new JButton [width] [length];
    3. Nyní, když bylo stanoveno, že bude existovat určitý počet tlačítek, musí být vytvořeno každé. Nejjednodušší způsob, jak to udělat, je dva pro smyčky, jeden pro osu x, jeden pro osu y. Uvnitř dvou smyček vytvoříme nové tlačítko a pro snadnou orientaci příklad vloží text do každého tlačítka, abychom věděli, které tlačítko v dvojrozměrném poli je kde. Chcete -li vytvořit tlačítko, musíte do smyčky vložit mřížku [x] [y] = new JButton ("(" ("+x+", "+y+") ");

      Vytvořte GUI Grid v Javě Krok 7
      Vytvořte GUI Grid v Javě Krok 7

      Krok 7. Přidejte tlačítka do rámečku

      Uvnitř smyčky musíme umístit tlačítka na rámeček jednoduchým příkazem: frame.add (grid [x] [y]);

      Vytvořte GUI Grid v Javě Krok 8
      Vytvořte GUI Grid v Javě Krok 8

      Krok 8. Vytvořte instanci ButtonGrid

      Ve vaší hlavní třídě typ: new ButtonGrid (3, 3); Tyto dvě trojice tvoří mřížku 3 na 3 a lze do ní vložit libovolná dvě kladná čísla.

      Vytvořte GUI Grid v Javě Krok 9
      Vytvořte GUI Grid v Javě Krok 9

      Krok 9. Spusťte program

      Chcete -li to provést v zatmění, stiskněte Ctrl+F11

      Metoda 1 z 1: Kód kroků

      Hlavní třída:

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

      Dovoz:

      import javax.swing. JFrame; import javax.swing. JButton; import java.awt. GridLayout; veřejná třída ButtonGrid {…

      Kód konstruktora:

      public class ButtonGrid {public ButtonGrid (int width, int length) {}}…

      Kód rámu:

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

      Tlačítko mřížky kód:

      | Rám JFrame = nový JFrame (); // vytvoří rámeček JButton mřížka; // pojmenovává mřížku tlačítek public ButtonGrid (int width, int length) {// konstruktor se 2 parametry frame.setLayout (new GridLayout (width, length)); // nastavení rozložení mřížky rámečku = nový JButton [šířka] [délka]; // přidělení velikosti mřížky pro (int y = 0; y <délka; y ++) {pro (int x = 0; x <šířka; x ++) {mřížka [x] [y] = nový JButton ("("+ x+","+y+")"); frame.add (mřížka [x] [y]); // přidá tlačítko do mřížky}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); frame.setVisible (true); }…

      Přidání tlačítek do rámečku:

      for (int y = 0; y <length; y ++) {for (int x = 0; x <width; x ++) {grid [x] [y] = new JButton ("(" "" x x+","+y+") "); frame.add (mřížka [x] [y]); }}…

      Vytvoření instance mřížky tlačítka:

      public static void main (String args) {new ButtonGrid (3, 3); // makes new ButtonGrid with 2 parameters}…

      Konečný kód:

      import javax.swing. JFrame; // import knihovny JFrame import javax.swing. JButton; // importuje knihovnu JButton import java.awt. GridLayout; // importuje knihovnu GridLayout public class ButtonGrid {JFrame frame = new JFrame (); // vytvoří rámeček JButton mřížka; // pojmenovává mřížku tlačítek public ButtonGrid (int width, int length) {// constructor frame.setLayout (new GridLayout (width, length)); // set layout grid = new JButton [width] [length]; // přidělení velikosti mřížky pro (int y = 0; y <délka; y ++) {pro (int x = 0; x <šířka; x ++) {mřížka [x] [y] = nový JButton ("("+ x+","+y+")"); // vytvoří nové tlačítko frame.add (mřížka [x] [y]); // přidá tlačítko do mřížky}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // nastaví vhodnou velikost pro frame frame.setVisible (true); // zviditelní rámec} public static void main (String args) {new ButtonGrid (3, 3); // makes new ButtonGrid with 2 parameters}}

      import javax.swing. JFrame; // import knihovny JFrame import javax.swing. JButton; // importuje knihovnu JButton import java.awt. GridLayout; // importuje knihovnu GridLayout

      veřejná třída ButtonGrid {

      Rám JFrame = nový JFrame (); // vytvoří rámeček JButton mřížka; // pojmenuje mřížku tlačítek

      public ButtonGrid (int width, int length) {// constructor frame.setLayout (new GridLayout (width, length)); // set layout grid = new JButton [width] [length]; // přidělení velikosti mřížky pro (int y = 0; y <délka; y ++) {pro (int x = 0; x <šířka; x ++) {mřížka [x] [y] = nový JButton ("("+ x+","+y+")"); // vytvoří nové tlačítko frame.add (mřížka [x] [y]); // přidá tlačítko do mřížky}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // nastaví vhodnou velikost pro frame frame.setVisible (true); // zviditelní rámec} public static void main (String args) {new ButtonGrid (3, 3); // makes new ButtonGrid with 2 parameters}

Doporučuje: