Grid bu mərhələdə xüsusi bir şey etmir, ancaq bir az araşdırma aparsanız, tic-tac-toe və ya Battleship kimi daha mürəkkəb 2D oyunu hazırlamaq üçün hərəkət dinləyiciləri və bir az məntiq əlavə edə bilərsiniz.
Qeyd: Bu məqalə bütün nümunələr üçün Eclipse istifadə edir, buna görə hər şey IDE -dən asılı olaraq fərqli ola bilər. Bu, JCreator -da ehtiyac duyduğunuz şeyə çox bənzəməlidir, lakin NetBeans kimi GUI əsaslı bir IDE üçün, əsasən NetBeansın sürükləmə üsulu səbəbindən, çox faydasızdır.
Addımlar
Addım 1. Java layihəsi yaradın
Bu olduqca sadədir. IDE -ni yandırın və yeni bir layihə yaradın. Nə istəsən onu çağır. Məsələn buttongrid olacaq.
Bu adın veriləcəyi fayl adı olduğu üçün heç bir əhəmiyyəti yoxdur
Addım 2. Əsas metodu olan bir Java sinfi yaradın
Yeni bir sinif yaradın və istədiyinizə ad verin. Məsələn buttongrid olacaq. Eclipse istifadəçisi üçün public static void main (string args) adlanan xananı işarələmək istəyəcəksiniz, buna görə başladığınız zaman onu yazmağa ehtiyac qalmayacaq.
Bu ad əvvəlkindən daha vacibdir, çünki tək bir söz kimi olmalı olacaq, əks halda istifadə olunmayacaq
Addım 3. Kitabxanaları idxal edin
Bu, kodunuzu bu koda yazmaq üçün lazım olacaq bütün məlumatları gətirir. Javax.swing. JFrame, javax.swing. JButton və java.awt. Gridlayout idxal etməlisiniz. Bunlar sinif başlamazdan əvvəl qoyulur, 1 ilə 3 arasında bir sətirdə, orada olduqları sıranın heç bir əhəmiyyəti yoxdur.
Addım 4. Bir konstruktor yaradın
Konstruktor, bir çox fərqli düymə ızgaralarının hamısının ayrı məlumatlara sahib olmasına imkan verən buttongrid sinifinin yeni bir nümunəsini hazırlayır. Bütün konstruktorların sinifləri ilə eyni adlanmalıdır. Konstruktorların bundan əvvəl heç bir şeyə ehtiyacı yoxdur, ancaq istinad üçün "ictimai" tez -tez oraya qoyulur. Konstruktorlar tez -tez bir sinifdə ilk üsul olaraq yerləşdirilir, buna görə də sinif adından dərhal sonra gedir, lakin sinif daxilində yerləşdirilməlidir. Butongongrid konstruktoruna konstruktorun adından sonra mötərizədə olan parametrlər lazımdır. Bu nümunədəki parametrlər 'x' və 'y' tam ədədləridir.
Addım 5. Çərçivə yaradın:
- Çərçivə adlandırılmalıdır. ButtonGrid konstruktor metodundan kənarda istinad edilə biləcəyindən əmin olmaq üçün onu metodun kənarına, ancaq sinif daxilinə yerləşdirirsiniz. Əksər dəyişənlər konstruktordan dərhal əvvəl sinifin yuxarı hissəsində adlandırılır. Yazdığınız yeni bir çərçivə yaratmaq üçün: JFrame frame = new JFrame ();
- Konstruktor metodunun içərisində bütün düymələrin ızgara planına qoyulduğundan əmin olmalıyıq. Bunu etmək üçün yazaraq çərçivənin nizamını təyin edirik: frame.setLayout (yeni GridLayout (x, y));
- Mütləq məcburi deyil, ancaq sağ üst küncdəki 'x' düyməsini basdığınız zaman çərçivəni yaxınlaşdırmaq üçün xətti əlavə etməliyik: frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE);
- Çərçivəni hər şeyə uyğun bir ölçüdə etmək üçün paket əmrini yerinə yetirməliyik: frame.pack ();
-
Nəhayət çərçivə üçün onu görünən hala gətirməliyik: frame.setVisible (doğru);
Addım 6. Düymə ızgarası yaradın:
- İstifadəçinin qarşılıqlı əlaqədə olduğu düymələr edilməlidir, amma nə qədər ehtiyacımız olduğunu bilmədiyimiz üçün əvvəlcə onların adını çəkmək lazımdır. Beləliklə, çərçivə yaratdığınız xəttin altında düymələr yaradın: JButton grid; İki kvadrat mötərizə dəsti, JButton-un şəbəkədəki iki ölçülü bir formatda saxlanıldığını söyləmək üçün var, əgər yalnız bir kvadrat mötərizədə olsaydı, hələ də işləyən JButton-un bir xətti olardı. iki ölçülü olduqda hansı düymənin yaradıldığını və ya onunla qarşılıqlı əlaqədə olduğunu göstərmək daha asandır.
- JButton -un adı var, amma hələ də neçə düymənin olduğunu söyləmək məcburiyyətindəyik. Konstruktorda məbləği təyin edən bir kod xətti əlavə etməlisiniz: grid = new JButton [width] [length];
-
Müəyyən sayda düymənin olacağı müəyyən edildikdən sonra hər biri yaradılmalıdır. Bunu etmək üçün ən asan yol, biri x oxu, biri y oxu üçün iki döngə etməkdir. İki döngənin içərisində yeni bir düymə düzəldirik və istinadın asanlığı üçün nümunə hər düymənin içinə mətn qoyur ki, ikiölçülü cərgədə hansı düymənin harada olduğunu bilək. Bir düymə yaratmaq üçün döngənin içərisinə grid [x] [y] = new JButton ("("+x+","+y+")") qoymaq lazımdır;
Addım 7. Çərçivəyə düymələr əlavə edin
Döngünün içərisində sadə bir əmr ilə düymələri çərçivəyə yerləşdirməliyik: frame.add (grid [x] [y]);
Addım 8. ButtonGrid Instance olun
Əsas sinifinizdə: yeni ButtonGrid (3, 3); İki üçlük 3 -dən 3 -ə qədər bir ızgaradır və hər hansı iki müsbət ədəd ora daxil edilə bilər.
Addım 9. Proqramı işə salın
Bunu tutmaq üçün Ctrl+F11 düymələrini basın
Metod 1 /1: Addımlar Kodu
Əsas sinif:
ictimai sinif ButtonGrid {public static void main (String args) {}}
İdxal:
javax.swing. JFrame idxal edin; javax.swing. JButton idxal edin; java.awt. GridLayout idxal edin; ictimai sinif ButtonGrid {…
Konstruktor kodu:
ictimai sinif ButtonGrid {public ButtonGrid (int width, int length) {}}…
Çərçivə Kodu:
ictimai sinif ButtonGrid {JFrame frame = new Jframe (); ictimai ButtonGrid (int width, int length) {frame.setLayout (yeni GridLayout (en, uzunluq)); frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); frame.setVisible (doğru); }}…
Düymə Şəbəkə Kodu:
| JFrame çərçivəsi = yeni JFrame (); // çərçivə yaradır JButton grid; // ümumi ButtonGrid düymələrinin şəbəkəsini adlandırır (int width, int length) {// 2 parametrə malik qurucu frame.setLayout (yeni GridLayout (en, uzunluq)); // çərçivə ızgarasının düzənini təyin edin = yeni JButton [eni] [uzunluq]; // (int y = 0; y <uzunluq; y ++) {üçün (int x = 0; x <en; x ++) {grid [x] [y] = yeni JButton ("("+) üçün grid ölçüsünü ayırın. x+","+y+")"); frame.add (grid [x] [y]); // düyməyə əlavə edir}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); frame.setVisible (doğru); }…
Çərçivəyə düymələr əlavə etmək:
for (int y = 0; y <uzunluq; y ++) {for (int x = 0; x <en; x ++) {grid [x] [y] = yeni JButton ("("+x+","+y+")) "); frame.add (grid [x] [y]); }}…
Bir düymə ızgarası nümunəsi hazırlamaq:
public static void main (String args) {new ButtonGrid (3, 3); // 2 parametrli yeni ButtonGrid edir}…
Yekun Kod:
javax.swing. JFrame idxal edin; // idxal JFrame kitabxana idxal javax.swing. JButton; // JButton kitabxanasını idxal java.awt. GridLayout; // GridLayout kitabxanasının ictimai sinifini ButtonGrid idxal edir {JFrame frame = new JFrame (); // çərçivə yaradır JButton grid; // ümumi ButtonGrid düymələrinin ızgarasını adlandırır (int width, int length) {// constructor frame.setLayout (yeni GridLayout (en, uzunluq)); // layout grid qurmaq = yeni JButton [eni] [uzunluq]; // (int y = 0; y <uzunluq; y ++) {üçün (int x = 0; x <en; x ++) {grid [x] [y] = yeni JButton ("("+) üçün grid ölçüsünü ayırın. x+","+y+")"); // yeni düymə frame.add (grid [x] [y]) yaradır; // düyməyə əlavə edir}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // frame frame.setVisible (doğru) üçün uyğun ölçülər təyin edir; // çərçivəni görünən edir} public static void main (String args) {new ButtonGrid (3, 3); // 2 ButtonGrid'i 2 parametrlə edir}}
javax.swing. JFrame idxal edin; // idxal JFrame kitabxana idxal javax.swing. JButton; // idxal JButton kitabxana idxal java.awt. GridLayout; // GridLayout kitabxanasını idxal edir
ictimai sinif ButtonGrid {
JFrame çərçivəsi = yeni JFrame (); // çərçivə yaradır JButton grid; // düymələr şəbəkəsini adlandırır
public ButtonGrid (int width, int length) {// qurucu frame.setLayout (yeni GridLayout (en, uzunluq)); // layout grid qurun = yeni JButton [eni] [uzunluq]; // (int y = 0; y <uzunluq; y ++) {üçün (int x = 0; x <en; x ++) {grid [x] [y] = yeni JButton ("("+) üçün grid ölçüsünü ayırın. x+","+y+")"); // yeni düymə frame.add (grid [x] [y]) yaradır; // düyməyə əlavə edir}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // frame frame.setVisible (doğru) üçün uyğun ölçülər təyin edir; // çərçivəni görünən edir} public static void main (String args) {new ButtonGrid (3, 3); // 2 ButtonGrid -i 2 parametrlə edir}