Java AWT (Abstract Window Toolkit) je API za razvoj grafičkog korisničkog sučelja (GUI) ili aplikacija temeljenih na sustavu Windows u Javi.
Java AWT komponente ovise o platformi, tj. komponente se prikazuju prema prikazu operativnog sustava. AWT je težak, tj. njegove komponente koriste resurse temeljnog operativnog sustava (OS).
java.awt paket pruža klase za AWT API kao što je TextField, Label, TextArea, RadioButton, CheckBox, Choice, List itd.
AWT vodič će pomoći korisniku da razumije Java GUI programiranje jednostavnim i lakim koracima.
Zašto je AWT neovisan o platformi?
Java AWT poziva izvornu platformu poziva izvornu platformu (operativni sustavi) potprogram za stvaranje API komponenti kao što su TextField, ChechBox, gumb, itd.
Na primjer, AWT GUI s komponentama kao što su TextField, oznaka i gumb imat će drugačiji izgled i osjećaj za različite platforme kao što su Windows, MAC OS i Unix. Razlog za to je što platforme imaju različite poglede na svoje izvorne komponente i AWT izravno poziva izvorni potprogram koji stvara te komponente.
Jednostavnim riječima, AWT aplikacija će izgledati kao Windows aplikacija u Windows OS-u, dok će izgledati kao Mac aplikacija u MAC OS-u.
Java AWT hijerarhija
Hijerarhija Java AWT klasa data je u nastavku.
Komponente
Svi elementi poput gumba, tekstualnih polja, traka za pomicanje itd. nazivaju se komponentama. U Javi AWT postoje klase za svaku komponentu kao što je prikazano na gornjem dijagramu. Kako bismo svaku komponentu postavili na određeno mjesto na ekranu, moramo je dodati u spremnik.
Kontejner
Spremnik je komponenta u AWT-u koja može sadržavati druge komponente kao što su gumbi, tekstualna polja, oznake itd. Klase koje proširuju klasu Spremnik poznate su kao spremnik kao što je Okvir, dijalog i Ploča .
cijepanje nizova c++
To je u osnovi zaslon na kojem su komponente smještene na svojim određenim lokacijama. Stoga sadrži i kontrolira raspored komponenti.
Napomena: Sam spremnik je komponenta (pogledajte gornji dijagram), stoga možemo dodati spremnik unutar spremnika.
Vrste spremnika:
Postoje četiri vrste spremnika u Javi AWT:
- Prozor
- Ploča
- Okvir
- Dijalog
Prozor
Prozor je spremnik koji nema obrube i trake izbornika. Za izradu prozora morate koristiti okvir, dijaloški okvir ili drugi prozor. Moramo stvoriti instancu klase Window da bismo stvorili ovaj spremnik.
Ploča
Panel je spremnik koji ne sadrži naslovnu traku, obrub ili traku izbornika. To je generički spremnik za držanje komponenti. Može imati druge komponente poput gumba, tekstualnog polja itd. Instanca klase Panel stvara spremnik u koji možemo dodavati komponente.
Okvir
Okvir je spremnik koji sadrži naslovnu traku i obrub i može imati trake izbornika. Može imati druge komponente poput gumba, tekstualnog polja, trake za pomicanje itd. Frame je najčešće korišteni spremnik pri razvoju AWT aplikacije.
Korisne metode klase komponenti
metoda | Opis |
---|---|
javni void add (komponenta c) | Umetne komponentu na ovu komponentu. |
public void setSize(int širina,int visina) | Postavlja veličinu (širinu i visinu) komponente. |
javni void setLayout(LayoutManager m) | Definira upravitelja izgleda za komponentu. |
public void setVisible(booleov status) | Mijenja vidljivost komponente, prema zadanim postavkama false. |
Java AWT primjer
Za izradu jednostavnog AWT primjera potreban vam je okvir. Postoje dva načina za stvaranje GUI-ja pomoću Frame-a u AWT-u.
- Proširivanjem klase okvira ( nasljedstvo )
- Stvaranjem objekta klase Okvir ( udruga )
AWT Primjer nasljeđivanjem
Pogledajmo jednostavan primjer AWT-a gdje nasljeđujemo klasu Frame. Ovdje prikazujemo komponentu gumba na okviru.
AWTExample1.java
// importing Java AWT class import java.awt.*; // extending Frame class to our class AWTExample1 public class AWTExample1 extends Frame { // initializing using constructor AWTExample1() { // creating a button Button b = new Button('Click Me!!'); // setting button position on screen b.setBounds(30,100,80,30); // adding button into frame add(b); // frame size 300 width and 300 height setSize(300,300); // setting the title of Frame setTitle('This is our basic AWT example'); // no layout manager setLayout(null); // now frame will be visible, by default it is not visible setVisible(true); } // main method public static void main(String args[]) { // creating instance of Frame class AWTExample1 f = new AWTExample1(); } }preuzmite ovaj primjer
Metoda setBounds(int x-axis, int y-axis, int width, int height) koristi se u gornjem primjeru koji postavlja položaj gumba awt.
Izlaz:
AWT Primjer po pridruživanju
Pogledajmo jednostavan primjer AWT-a gdje stvaramo instancu klase Frame. Ovdje stvaramo komponentu TextField, Label i Button na okviru.
kali linux naredbe
AWTExample2.java
// importing Java AWT class import java.awt.*; // class AWTExample2 directly creates instance of Frame class class AWTExample2 { // initializing using constructor AWTExample2() { // creating a Frame Frame f = new Frame(); // creating a Label Label l = new Label('Employee id:'); // creating a Button Button b = new Button('Submit'); // creating a TextField TextField t = new TextField(); // setting position of above components in the frame l.setBounds(20, 80, 80, 30); t.setBounds(20, 100, 80, 30); b.setBounds(100, 100, 80, 30); // adding components into frame f.add(b); f.add(l); f.add(t); // frame size 300 width and 300 height f.setSize(400,300); // setting the title of frame f.setTitle('Employee info'); // no layout f.setLayout(null); // setting visibility of frame f.setVisible(true); } // main method public static void main(String args[]) { // creating instance of Frame class AWTExample2 awt_obj = new AWTExample2(); } }preuzmite ovaj primjer
Izlaz: