Java AWT (Abstract Window Toolkit) van egy API grafikus felhasználói felület (GUI) vagy Windows alapú alkalmazások fejlesztésére Java nyelven.
A Java AWT összetevői platformfüggőek, azaz az összetevők az operációs rendszer nézetének megfelelően jelennek meg. Az AWT nagy súlyú, azaz összetevői az alapul szolgáló operációs rendszer (OS) erőforrásait használják.
A java.awt csomag biztosítja osztályok AWT API-hoz, például TextField , Label , TextArea , RadioButton , CheckBox , Choice , List stb.
Az AWT bemutató segít a felhasználónak a Java GUI programozás egyszerű és egyszerű lépésekben történő megértésében.
Miért platformfüggetlen az AWT?
A Java AWT a natív platformot natív platform (operációs rendszerek) szubrutinnak nevezi az API-összetevők, például TextField, ChechBox, gomb stb. létrehozásához.
Például egy olyan AWT grafikus felhasználói felület, amely olyan összetevőket tartalmaz, mint a TextField, a címke és a gomb, eltérő megjelenésű és érzetet kelt a különböző platformokon, mint például a Windows, a MAC OS és a Unix. Ennek az az oka, hogy a platformok eltérő nézetekkel rendelkeznek a natív összetevőikről, és az AWT közvetlenül meghívja az ezeket az összetevőket létrehozó natív szubrutinokat.
Egyszerű szavakkal, az AWT-alkalmazások úgy néznek ki, mint egy Windows-alkalmazás a Windows operációs rendszerben, míg a Mac-alkalmazások a MAC OS-ben.
Java AWT hierarchia
A Java AWT osztályok hierarchiája alább látható.
Alkatrészek
Az összes elemet, például a gombot, szövegmezőket, görgetősávokat stb. összetevőknek nevezünk. A Java AWT-ben minden komponenshez vannak osztályok, amint az a fenti diagramon látható. Ahhoz, hogy minden komponenst a képernyőn egy adott pozícióba helyezhessünk, hozzá kell adnunk őket egy tárolóhoz.
Tartály
A Container egy olyan komponens az AWT-ben, amely tartalmazhat további összetevőket, például gombokat, szövegmezőket, címkéket stb. A Container osztályt kiterjesztő osztályok tárolóként ismertek, mint pl. Keret, Párbeszéd és Panel .
gépi tanulás típusai
Ez alapvetően egy képernyő, ahol a komponensek meghatározott helyükön vannak elhelyezve. Így tartalmazza és szabályozza az összetevők elrendezését.
Megjegyzés: A konténer maga is egy komponens (lásd a fenti ábrát), ezért a konténer belsejébe is hozzáadhatunk egy tárolót.
A konténerek típusai:
A Java AWT-ben négyféle konténer létezik:
kruskals algoritmus
- Ablak
- Panel
- Keret
- Párbeszéd
Ablak
Az ablak az a tároló, amelynek nincsenek szegélyei és menüsorai. Az ablak létrehozásához keretet, párbeszédablakot vagy más ablakot kell használnia. A tároló létrehozásához létre kell hoznunk a Window osztály egy példányát.
Panel
A Panel az a tároló, amely nem tartalmaz címsort, szegélyt vagy menüsort. Ez egy általános tartály az alkatrészek tárolására. Más komponensei is lehetnek, mint például gomb, szövegmező stb. A Panel osztály egy példánya létrehoz egy tárolót, amibe komponenseket adhatunk hozzá.
Keret
A keret az a tároló, amely címsort és szegélyt tartalmaz, és menüsorokat is tartalmazhat. Más összetevőket tartalmazhat, mint például gomb, szövegmező, görgetősáv stb. A Frame a legszélesebb körben használt konténer az AWT alkalmazások fejlesztése során.
A komponensosztály hasznos módszerei
Módszer | Leírás |
---|---|
public void add (c komponens) | Beszúr egy komponenst erre az összetevőre. |
public void setSize (int szélesség, int magasság) | Beállítja az alkatrész méretét (szélességét és magasságát). |
public void setLayout(LayoutManager m) | Meghatározza az összetevő elrendezéskezelőjét. |
public void setVisible (logikai állapot) | Módosítja az összetevő láthatóságát, alapértelmezés szerint false. |
Java AWT példa
Az egyszerű AWT-példa létrehozásához keretre van szüksége. Kétféleképpen hozhat létre grafikus felhasználói felületet a Frame használatával az AWT-ben.
- A Frame osztály kiterjesztésével ( öröklés )
- A Frame osztály objektumának létrehozásával ( Egyesület )
AWT példa öröklődés szerint
Nézzünk egy egyszerű példát az AWT-re, ahol a Frame osztályt örököljük. Itt a kereten lévő Gomb komponenst mutatjuk be.
AWTEpélda1.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(); } }töltse le ezt a példát
A setBounds(int x-tengely, int y-tengely, int szélesség, int magasság) módszert használjuk a fenti példában, amely beállítja az awt gomb helyzetét.
Kimenet:
AWT-példa egyesület szerint
Nézzünk egy egyszerű példát az AWT-re, ahol a Frame osztály példányát hozzuk létre. Itt létrehozunk egy szövegmező, címke és gomb komponenst a kereten.
AWTEpélda2.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(); } }töltse le ezt a példát
Kimenet: