Grid- ն այս փուլում առանձնահատուկ ոչինչ չի անում, բայց մի փոքր հետազոտելով ՝ կարող եք ավելացնել ունկնդիրներ և մի փոքր տրամաբանություն ՝ պարզ 2D խաղ ստեղծելու համար, ինչպիսին է tic-tac-toe- ը կամ ավելի բարդերը, ինչպիսիք են Battleship- ը:
Նշում. Այս հոդվածը օգտագործում է Eclipse- ը բոլոր օրինակների համար, այնպես որ ամեն ինչ կարող է տարբեր լինել `կախված ձեր IDE- ից: Սա պետք է շատ նման լինի նրան, ինչ ձեզ հարկավոր կլինի JCreator- ում, բայց դա բավականին անօգուտ է GUI- ի վրա հիմնված IDE- ի համար, ինչպիսին է NetBeans- ը, հիմնականում NetBeans- ի քաշել և թողնելու մեթոդի պատճառով:
Քայլեր
Քայլ 1. Ստեղծեք Java նախագիծ:
Սա բավականին պարզ է: Միացրեք ձեր IDE- ն և ստեղծեք նոր նախագիծ: Անվանեք այն, ինչ ցանկանում եք: Օրինակը կլինի կոշտ:
Այս անունը իրականում ընդհանրապես նշանակություն չունի, քանի որ այն պարզապես ֆայլի անունն է, որը կտրվի:
Քայլ 2. Ստեղծեք Java դասարան հիմնական մեթոդով:
Ստեղծեք նոր դասարան և անվանեք այն, ինչ ցանկանում եք: Օրինակը կլինի կոշտ: Eclipse- ի օգտվողի համար կցանկանայիք սեղմել public static void main (տող args) կոչվող վանդակը, այնպես որ գործարկելիս ստիպված չեք լինի այն մուտքագրել:
Այս անունը ավելի կարևոր է, քան նախորդը, քանի որ այն պետք է լինի որպես մեկ բառ, այլապես այն օգտագործելի չի լինի:
Քայլ 3. Գրադարանների ներմուծում:
Սա բերում է այն ամբողջ տեղեկատվությունը, որն անհրաժեշտ կլինի ձեր ծածկագիրը այս ծածկագրին գրելու համար: Դուք պետք է ներմուծեք javax.swing. JFrame, javax.swing. JButton և java.awt. Gridlayout: Դրանք դրվում են դասի սկզբից առաջ ՝ ինչ -որ տեղ 1 -ից 3 -րդ տողերի վրա, կարևոր չէ, թե որտեղ են դրանք:
Քայլ 4. Ստեղծեք կոնստրուկտոր:
Կոնստրուկտորը ստեղծում է հետին ցանցի դասի նոր օրինակ, որը թույլ է տալիս բազմաթիվ տարբեր կոճակների ցանցեր ունենալ առանձին տեղեկատվություն: Բոլոր կոնստրուկտորներին անհրաժեշտ է անվանել նույնը, ինչ իրենց դասին: Կոնստրուկտորներին մինչ այդ ոչինչ պետք չէ, բայց հաճախ «հանրայինը» տեղադրվում է այնտեղ `հղում կատարելու համար: Կոնստրուկտորները հաճախ դասվում են որպես դասի առաջին մեթոդ, ուստի այն անցնում է դասի անունից անմիջապես հետո, այն, այնուամենայնիվ, պետք է տեղադրվի դասարանում: The buttongrid կոնստրուկտորին անհրաժեշտ են պարամետրեր, որոնք կոնստրուկտորի անունից հետո դրվում են փակագծերում: Այս օրինակի պարամետրերն են 'x' և 'y' ամբողջ թվերը:
Քայլ 5. Ստեղծեք շրջանակ
- Շրջանակը պետք է անվանվի: Համոզված լինելու համար, որ այն կարող է հղվել ButtonGrid կոնստրուկտորի մեթոդից դուրս, դուք տեղադրեք այն այդ մեթոդի կողքին, բայց դասի շրջանակներում: Փոփոխականների մեծամասնությունը դասվում են դասի վերևում ՝ հենց կոնստրուկտորից առաջ: Նոր շրջանակ ստեղծելու համար մուտքագրեք ՝ JFrame frame = new JFrame ();
- Կոնստրուկտորի մեթոդի ներսում մենք պետք է համոզվենք, որ բոլոր կոճակները տեղադրված են ցանցի դասավորության մեջ: Դա անելու համար մենք սահմանում ենք շրջանակի դասավորությունը `մուտքագրելով. Frame.setLayout (նոր GridLayout (x, y));
- Պարտադիր չէ, որ պարտադիր լինի, բայց շրջանակը փակելու համար ՝ վերևի աջ անկյունում սեղմելով «x» կոճակը, մենք պետք է ավելացնենք տողը ՝ frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE);
- Շրջանակը համապատասխան չափի դարձնելու համար, որպեսզի ամեն ինչ համապատասխանի մեզ, մենք պետք է գործարկենք pack հրամանը ՝ frame.pack ();
-
Վերջապես, շրջանակի համար մենք պետք է այն դարձնենք այնպես, որ այն տեսանելի լինի. Frame.setVisible (true);
Քայլ 6. Ստեղծեք կոճակների ցանց
- Կոճակները, որոնցով օգտվողը փոխազդում է, պետք է պատրաստվեն, բայց քանի որ մենք չգիտենք, թե քանիսն ենք մեզ պետք, դրանք առաջին հերթին պետք է անվանվեն: Այսպիսով, շրջանակի ստեղծման գծից անմիջապես ներքև ստեղծեք կոճակները. JButton grid; Քառակուսի փակագծերի երկու հավաքածու կա `ասելու, որ JButton- ի ցանցը պահվում է երկչափ ձևաչափով, եթե լիներ քառակուսի փակագծերի միայն մեկ հավաքածու, ապա դա պարզապես JButton- ի տող կլիներ, որը դեռ աշխատում է, պարզապես ավելի հեշտ է անդրադառնալ, թե որ կոճակը ստեղծվում կամ փոխազդում է, երբ այն երկչափ է:
- JButton- ի անուններն անվանվել են, բայց դեռ պետք է ասել, թե քանի կոճակ կա: Կոնստրուկտորում պետք է ավելացնել կոդի տող, որը սահմանում է գումարը. Grid = new JButton [width] [length];
-
Այժմ, երբ որոշվել է, որ կլինեն որոշակի քանակությամբ կոճակներ, յուրաքանչյուրը պետք է ստեղծվի: Դա անելու ամենահեշտ ձևը երկուսն են ՝ օղակների համար, մեկը ՝ x առանցքի, մեկը ՝ y առանցքի: Երկու օղակի ներսում մենք նոր կոճակ ենք պատրաստում, և հղման հեշտության համար օրինակը տեքստ է դնում յուրաքանչյուր կոճակի ներսում, որպեսզի իմանանք, թե երկչափ զանգվածի որ կոճակն է որտեղ: Կոճակ ստեղծելու համար հանգույցի ներսում պետք է տեղադրել ցանց [x] [y] = new JButton ("("+x+","+y+")");
Քայլ 7. Շրջանակին ավելացրեք կոճակներ:
Օղակի ներսում մենք պետք է կոճակները դնենք շրջանակի վրա ՝ պարզ հրամանով. Frame.add (ցանց [x] [y]);
Քայլ 8. Կատարեք ButtonGrid Instance:
Ձեր հիմնական դասի տեսակը ՝ նոր ButtonGrid (3, 3); Երկու երեքը կազմում են 3 -ից 3 ցանց, և ցանկացած երկու դրական թիվ կարելի է տեղադրել այնտեղ:
Քայլ 9. Գործարկել ծրագիրը:
Խավարում կատարելու համար սեղմեք Ctrl+F11
Մեթոդ 1 -ից 1 -ը ՝ Քայլերի ծածկագիր
Հիմնական դասարան
հանրային դաս ButtonGrid {public static void main (String args) {}}
Ներմուծում:
ներմուծել javax.swing. JFrame; ներմուծել javax.swing. JButton; ներմուծել java.awt. GridLayout; հանրային դասի ButtonGrid {…
Շինարարական ծածկագիր:
հանրային դաս ButtonGrid {public ButtonGrid (int լայնություն, int երկարություն) {}}…
Շրջանակի կոդ:
հանրային դաս ButtonGrid {JFrame frame = new Jframe (); հանրային ButtonGrid (int լայնություն, int երկարություն) {frame.setLayout (նոր GridLayout (լայնություն, երկարություն)); frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); frame.setVisible (ճշմարիտ); }}…
Կոճակի ցանցի կոդ:
| JFrame շրջանակ = նոր JFrame (); // ստեղծում է շրջանակ JButton ցանց; // անվանում է կոճակների ցանցը հանրային ButtonGrid (int լայնություն, int երկարություն) {// կոնստրուկտոր 2 պարամետրով frame.setLayout (նոր GridLayout (լայնություն, երկարություն)); // սահմանել շրջանակի ցանցի դասավորությունը = նոր JButton [լայնություն] [երկարություն]; // հատկացնել ցանցի չափը (int y = 0; y <երկարություն; y ++) {for (int x = 0; x <width; x ++) {grid [x] [y] = new JButton ("("+ x+","+y+")"); շրջանակ. ավելացնել (ցանց [x] [y]); // ավելացնում է կոճակը ցանցին}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); frame.setVisible (ճշմարիտ); }…
Կոճակներ ավելացնել շրջանակին
համար (int y = 0; y <երկարություն; y ++) {for (int x = 0; x <width; x ++) {grid [x] [y] = new JButton ("("+x+","+y+") "); շրջանակ. ավելացնել (ցանց [x] [y]); }}…
Կոճակների ցանցի օրինակ պատրաստելը
public static void main (String args) {new ButtonGrid (3, 3); // ստեղծում է նոր ButtonGrid 2 պարամետրով}…
Վերջնական ծածկագիր:
ներմուծել javax.swing. JFrame; // ներմուծում է JFrame գրադարան ներմուծում javax.swing. JButton; // ներմուծում է JButton գրադարան ներմուծում java.awt. GridLayout; // ներմուծում է GridLayout գրադարան հանրային դասի ButtonGrid {JFrame frame = new JFrame (); // ստեղծում է շրջանակ JButton ցանց; // անվանում է կոճակների ցանցը հանրային ButtonGrid (int լայնություն, int երկարություն) {// constructor frame.setLayout (նոր GridLayout (լայնություն, երկարություն)); // սահմանել դասավորության ցանց = նոր JButton [լայնություն] [երկարություն]; // հատկացնել ցանցի չափը (int y = 0; y <երկարություն; y ++) {համար (int x = 0; x <լայնություն; x ++) {grid [x] [y] = new JButton ("("+ x+","+y+")"); // ստեղծում է նոր կոճակ frame.add (ցանց [x] [y]); // ավելացնում է կոճակը ցանցին}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // սահմանում է համապատասխան չափը շրջանակի շրջանակի համար: setVisible (ճշմարիտ); // տեսանելի է դարձնում շրջանակը} public static void main (String args) {new ButtonGrid (3, 3); // դարձնում է նոր ButtonGrid 2 պարամետրով}}
ներմուծել javax.swing. JFrame; // ներմուծում է JFrame գրադարան ներմուծում javax.swing. JButton; // ներմուծում է JButton գրադարան ներմուծում java.awt. GridLayout; // ներմուծում է GridLayout գրադարանը
հանրային դասի ButtonGrid {
JFrame շրջանակ = նոր JFrame (); // ստեղծում է շրջանակ JButton ցանց; // անվանում է կոճակների ցանցը
հանրային ButtonGrid (int լայնություն, int երկարություն) {// կոնստրուկտոր frame.setLayout (նոր GridLayout (լայնություն, երկարություն)); // սահմանել դասավորության ցանց = նոր JButton [լայնություն] [երկարություն]; // հատկացնել ցանցի չափը (int y = 0; y <երկարություն; y ++) {for (int x = 0; x <width; x ++) {grid [x] [y] = new JButton ("("+ x+","+y+")"); // ստեղծում է նոր կոճակ frame.add (ցանց [x] [y]); // ավելացնում է կոճակը ցանցին}} frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.pack (); // սահմանում է համապատասխան չափը շրջանակի շրջանակի համար: setVisible (ճշմարիտ); // տեսանելի է դարձնում շրջանակը} public static void main (String args) {new ButtonGrid (3, 3); // դարձնում է նոր ButtonGrid 2 պարամետրով}