Java'da GUI Izgarası Nasıl Yapılır (Resimlerle)

İçindekiler:

Java'da GUI Izgarası Nasıl Yapılır (Resimlerle)
Java'da GUI Izgarası Nasıl Yapılır (Resimlerle)

Video: Java'da GUI Izgarası Nasıl Yapılır (Resimlerle)

Video: Java'da GUI Izgarası Nasıl Yapılır (Resimlerle)
Video: Inkscape Nedir ve Nasıl Kullanılır? 2024, Mayıs
Anonim

Izgara bu aşamada özel bir şey yapmaz, ancak biraz araştırma ile tic-tac-toe gibi basit bir 2D oyun veya Battleship gibi daha karmaşık oyunlar yapmak için aksiyon dinleyicileri ve biraz mantık ekleyebilirsiniz.

Not: Bu makale, tüm örnekler için Eclipse kullanır, bu nedenle IDE'nize bağlı olarak işler farklı olabilir. Bu, JCreator'da ihtiyaç duyacağınız şeye çok benzer olmalıdır, ancak NetBeans gibi bir GUI tabanlı IDE için, esas olarak NetBeans'in sürükle ve bırak yöntemi nedeniyle oldukça işe yaramaz.

adımlar

Java Adım 1'de bir GUI Izgarası Yapın
Java Adım 1'de bir GUI Izgarası Yapın

Adım 1. Bir Java projesi oluşturun

Bu oldukça basit. IDE'nizi açın ve yeni bir proje oluşturun. Ne istersen onu çağır. Örnek düğme ızgarası olacaktır.

Bu isim gerçekten önemli değil çünkü sadece dosya ismi verilecek

Java Adım 2'de bir GUI Izgarası Yapın
Java Adım 2'de bir GUI Izgarası Yapın

Adım 2. Ana yöntemle bir Java sınıfı oluşturun

Yeni bir sınıf oluşturun ve istediğiniz gibi adlandırın. Örnek düğme ızgarası olacaktır. Bir Eclipse kullanıcısı için public static void main(string args) adlı kutuyu işaretlemek isteyeceksiniz, böylece başladığınızda yazmanız gerekmeyecek.

Bu isim bir öncekinden daha önemlidir çünkü tek kelime olması gerekir, aksi takdirde kullanılamaz

Java Adım 3'te bir GUI Izgarası Yapın
Java Adım 3'te bir GUI Izgarası Yapın

Adım 3. Kitaplıkları içe aktarın

Bu, kodunuzu bu koda yazmak için ihtiyaç duyacağınız tüm bilgileri getirir. javax.swing. JFrame, javax.swing. JButton ve java.awt. Gridlayout'u içe aktarmanız gerekir. Bunlar dersin başlangıcından önce, 1 ile 3 arasındaki satırlarda bir yere konur, orada bulundukları sıra önemli değildir.

Java Adım 4'te bir GUI Izgarası Yapın
Java Adım 4'te bir GUI Izgarası Yapın

Adım 4. Bir kurucu oluşturun

Yapıcı, birçok farklı düğme ızgarasının hepsinin ayrı bilgilere sahip olmasına izin veren buttongrid sınıfının yeni bir örneğini oluşturur. Tüm kurucular, sınıflarıyla aynı şekilde adlandırılmalıdır. Yapıcılar ondan önce hiçbir şeye ihtiyaç duymazlar, ancak 'genel' genellikle referans kolaylığı için oraya konur. Yapıcılar genellikle bir sınıfta ilk yöntem olarak yerleştirilir, bu nedenle sınıf adından hemen sonra gelir, ancak sınıfın içine yerleştirilmelidir. Buttongrid yapıcısı, yapıcı adından sonra parantez içine alınan parametrelere ihtiyaç duyar. Bu örnekteki parametreler 'x' ve 'y' tam sayılarıdır.

Java Adım 5'te bir GUI Izgarası Yapın
Java Adım 5'te bir GUI Izgarası Yapın

Adım 5. Çerçeve Oluşturun:

  1. Çerçeve adlandırılmalıdır. ButtonGrid yapıcı yönteminin dışında başvurulabildiğinden emin olmak için onu bu yöntemin dışına, ancak sınıfın içine yerleştirirsiniz. Çoğu değişken, yapıcıdan hemen önce sınıfın en üstünde adlandırılır. Yeni bir çerçeve oluşturmak için şunu yazın: JFrame çerçeve = new JFrame();
  2. Yapıcı yönteminin içinde, tüm düğmelerin ızgara düzenine yerleştirildiğinden emin olmamız gerekir. Bunu yapmak için çerçeve düzenini şunu yazarak belirledik: frame.setLayout(new GridLayout(x,y));
  3. Zorunlu değil, ancak sağ üst köşedeki 'x' düğmesine bastığınızda çerçeveyi kapatmak için şu satırı eklememiz gerekiyor: frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE);
  4. Çerçeveyi her şeyin sığabileceği bir boyuta getirmek için pack komutunu çalıştırmamız gerekiyor: frame.pack();
  5. Son olarak çerçeveyi görünür hale getirmemiz gerekiyor: frame.setVisible(true);

    Java Adım 6'da bir GUI Izgarası Yapın
    Java Adım 6'da bir GUI Izgarası Yapın

    Adım 6. Düğme ızgarası oluşturun:

    1. Kullanıcının etkileşimde bulunduğu butonların yapılması gerekiyor, ancak kaç tane ihtiyacımız olduğunu bilmediğimiz için önce isimlendirilmeleri gerekiyor. Çerçeveyi oluşturduğunuz satırın hemen altında butonları oluşturun: JButton grid; İki köşeli parantez takımı, ızgaradaki JButton'ların iki boyutlu bir biçimde tutulduğunu söylemek için vardır, eğer sadece bir köşeli parantez takımı olsaydı, o zaman sadece bir JButton satırı olurdu, ki bu hala çalışıyor, sadece iki boyutlu olduğunda hangi düğmenin oluşturulduğuna veya etkileşime girdiğine başvurmak daha kolaydır.
    2. JButton'lara isim verildi ama yine de kaç tane buton olduğunu söylememiz gerekiyor. Yapıcıya miktarı ayarlayan bir kod satırı eklemeniz gerekir: grid=new JButton[width][length];
    3. Artık belirli sayıda düğme olacağı belirlendiğine göre, her biri oluşturulmalıdır. Bunu yapmanın en kolay yolu, biri x ekseni, diğeri y ekseni için olmak üzere iki for döngüsü kullanmaktır. İki döngünün içinde yeni bir düğme yaparız ve referans kolaylığı için örnek, iki boyutlu dizideki hangi düğmenin nerede olduğunu bilmemiz için her düğmenin içine metin koyar. Bir düğme oluşturmak için döngünün içine grid[x][y] = new JButton ("("+x+", "+y+")");

      Java Adım 7'de bir GUI Izgarası Yapın
      Java Adım 7'de bir GUI Izgarası Yapın

      Adım 7. Çerçeveye düğmeler ekleyin

      Döngünün içinde basit bir komutla butonları çerçeveye yerleştirmemiz gerekiyor: frame.add(grid[x][y]);

      Java Adım 8'de bir GUI Izgarası Yapın
      Java Adım 8'de bir GUI Izgarası Yapın

      Adım 8. ButtonGrid Örneği Yapın

      Ana sınıfınızda: new ButtonGrid(3, 3); İki üçlü, 3'e 3'lük bir ızgaradır ve oraya herhangi iki pozitif sayı konabilir.

      Java Adım 9'da bir GUI Izgarası Yapın
      Java Adım 9'da bir GUI Izgarası Yapın

      Adım 9. Programı Çalıştırın

      Bunu Eclipse'de yapmak için Ctrl+F11 tuşlarına basın

      Yöntem 1/1: Adım Kodu

      ana sınıf:

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

      İthalat:

      javax.swing. JFrame'i içe aktar; javax.swing. JButton'u içe aktarın; java.awt. GridLayout'u içe aktarın; genel sınıf ButtonGrid {…

      Yapıcı Kodu:

      public class ButtonGrid { public ButtonGrid(int genişlik, int uzunluk){ } } …

      Çerçeve Kodu:

      genel sınıf ButtonGrid { JFrame çerçevesi=yeni Jframe(); public ButtonGrid(int genişlik, int uzunluk){ frame.setLayout(new GridLayout(genişlik, uzunluk)); frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); çerçeve.paket(); frame.setVisible(true); } } …

      Düğme Izgara Kodu:

      |JFrame çerçevesi=yeni JFrame(); // JButton grid çerçevesini oluşturur; //düğmelerin ızgarasını adlandırır public ButtonGrid(int genişlik, int uzunluk){ //2 parametreli kurucu frame.setLayout(yeni GridLayout(genişlik, uzunluk)); //çerçeve ızgarasının düzenini ayarla=yeni JButton[genişlik][uzunluk]; // ızgaranın boyutunu tahsis et for(int y=0; y<uzunluk; y++){ for(int x=0; x<width; x++){ grid[x][y]=new JButton("("+) x+", "+y+")"); frame.add(ızgara[x][y]); //düğmeyi ızgaraya ekler } } frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); çerçeve.paket(); frame.setVisible(true); } …

      Çerçeveye Düğme Ekleme:

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

      Bir düğme ızgarası örneği yapmak:

      public static void main(String args) { new ButtonGrid(3, 3);//2 parametre ile yeni ButtonGrid yapar } …

      Son Kod:

      javax.swing. JFrame'i içe aktarın; //JFrame kitaplığını içe aktarır içe aktar javax.swing. JButton; //JButton kitaplığını içe aktarır içe aktar java.awt. GridLayout; //GridLayout kitaplığını içe aktarır public class ButtonGrid { JFrame çerçevesi=yeni JFrame(); // JButton grid çerçevesini oluşturur; //düğmelerin ızgarasını adlandırır public ButtonGrid(int genişlik, int uzunluk){ //yapıcı frame.setLayout(yeni GridLayout(genişlik, uzunluk)); //düzen ızgarasını ayarla=yeni JButton[genişlik][uzunluk]; //grid boyutunu tahsis et for(int y=0; y<uzunluk; y++){ for(int x=0; x<width; x++){ grid[x][y]=new JButton("("+ x+", "+y+")"); // yeni buton çerçevesi oluşturur.add(grid[x][y]); //düğmeyi ızgaraya ekler } } frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); çerçeve.paket(); //çerçeve için uygun boyutu ayarlar.setVisible(true); //çerçeveyi görünür yapar } public static void main(String args) { new ButtonGrid(3, 3);//2 parametre ile yeni ButtonGrid yapar } }

      javax.swing. JFrame'i içe aktar; //JFrame kitaplığını içe aktarır içe aktar javax.swing. JButton; //JButton kitaplığını içe aktarır içe aktar java.awt. GridLayout; //GridLayout kitaplığını içe aktarır

      genel sınıf ButtonGrid {

      JFrame çerçevesi=yeni JFrame(); // JButton grid çerçevesini oluşturur; // düğmelerin ızgarasını adlandırır

      public ButtonGrid(int genişlik, int uzunluk){ //yapıcı frame.setLayout(yeni GridLayout(genişlik, uzunluk)); //düzen ızgarasını ayarla=yeni JButton[genişlik][uzunluk]; // ızgaranın boyutunu tahsis et for(int y=0; y<uzunluk; y++){ for(int x=0; x<width; x++){ grid[x][y]=new JButton("("+) x+", "+y+")"); // yeni buton çerçevesi oluşturur.add(grid[x][y]); //düğmeyi ızgaraya ekler } } frame.setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); çerçeve.paket(); //çerçeve için uygun boyutu ayarlar.setVisible(true); //çerçeveyi görünür yapar } public static void main(String args) { new ButtonGrid(3, 3);//2 parametre ile yeni ButtonGrid yapar }

Önerilen: