Java AWT (Zestaw narzędzi do abstrakcyjnego okna) jest API do tworzenia graficznego interfejsu użytkownika (GUI) lub aplikacji opartych na systemie Windows w Jawie.
Komponenty Java AWT są zależne od platformy, tj. komponenty są wyświetlane zgodnie z widokiem systemu operacyjnego. AWT jest bardzo ciężki, co oznacza, że jego komponenty korzystają z zasobów bazowego systemu operacyjnego (OS).
Plik java.awt pakiet zapewnia zajęcia dla API AWT, takiego jak TextField, Label, TextArea, RadioButton, CheckBox, Choice, List itp.
Samouczek AWT pomoże użytkownikowi zrozumieć programowanie GUI w języku Java w prostych i łatwych krokach.
Dlaczego AWT jest niezależny od platformy?
Java AWT wywołuje natywną platformę, wywołując podprogram natywnej platformy (systemów operacyjnych) w celu tworzenia komponentów API, takich jak TextField, ChechBox, przycisk itp.
Na przykład interfejs GUI AWT z komponentami takimi jak TextField, etykieta i przycisk będzie miał inny wygląd i działanie dla różnych platform, takich jak Windows, MAC OS i Unix. Powodem tego jest to, że platformy mają inny widok na swoje natywne komponenty, a AWT bezpośrednio wywołuje natywny podprogram, który tworzy te komponenty.
Krótko mówiąc, aplikacja AWT będzie wyglądać jak aplikacja Windows w systemie operacyjnym Windows, podczas gdy będzie wyglądać jak aplikacja Mac w systemie MAC OS.
Hierarchia AWT w Javie
Hierarchia klas Java AWT jest podana poniżej.
składniki
Wszystkie elementy, takie jak przycisk, pola tekstowe, paski przewijania itp., nazywane są komponentami. W Java AWT istnieją klasy dla każdego komponentu, jak pokazano na powyższym diagramie. Aby umieścić każdy komponent w określonej pozycji na ekranie, musimy dodać go do kontenera.
Pojemnik
Kontener to komponent AWT, który może zawierać inne komponenty, takie jak przyciski, pola tekstowe, etykiety itp. Klasy rozszerzające klasę Container są znane jako kontenery, np. Rama, okno dialogowe I Płyta .
kw. 4 miesiące
Zasadniczo jest to ekran, na którym elementy są umieszczane w określonych lokalizacjach. W ten sposób zawiera i kontroluje układ komponentów.
Uwaga: Kontener sam w sobie jest komponentem (patrz powyższy diagram), dlatego możemy dodać kontener do wnętrza kontenera.
Rodzaje kontenerów:
W Java AWT istnieją cztery typy kontenerów:
producent Linuksa
- Okno
- Płyta
- Rama
- Dialog
Okno
Okno to kontener, który nie ma obramowań ani pasków menu. Aby utworzyć okno, musisz użyć ramki, okna dialogowego lub innego okna. Aby utworzyć ten kontener, musimy utworzyć instancję klasy Window.
Płyta
Panel to kontener, który nie zawiera paska tytułu, obramowania ani paska menu. Jest to ogólny pojemnik do przechowywania komponentów. Może posiadać inne komponenty takie jak przycisk, pole tekstowe itp. Instancja klasy Panel tworzy kontener, do którego możemy dodawać komponenty.
Rama
Ramka to kontener zawierający pasek tytułu i obramowanie oraz może zawierać paski menu. Może zawierać inne komponenty, takie jak przycisk, pole tekstowe, pasek przewijania itp. Ramka jest najczęściej używanym kontenerem podczas tworzenia aplikacji AWT.
Przydatne metody klasy komponentów
metoda | Opis |
---|---|
publiczny nieważny dodatek (komponent c) | Wstawia komponent do tego komponentu. |
public void setSize (int szerokość, int wysokość) | Ustawia rozmiar (szerokość i wysokość) komponentu. |
public void setLayout(LayoutManager m) | Definiuje menedżera układu dla komponentu. |
publiczny zestaw pustych wartości Widoczny (status logiczny) | Zmienia widoczność komponentu, domyślnie false. |
Przykład Java AWT
Aby stworzyć prosty przykład AWT, potrzebujesz ramki. Istnieją dwa sposoby tworzenia GUI przy użyciu ramki w AWT.
- Rozszerzając klasę Frame ( dziedzictwo )
- Tworząc obiekt klasy Frame ( stowarzyszenie )
Przykład AWT przez dziedziczenie
Zobaczmy prosty przykład AWT, w którym dziedziczymy klasę Frame. Tutaj pokazujemy komponent przycisku na ramce.
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(); } }pobierz ten przykład
W powyższym przykładzie użyto metody setBounds(int x-axis, int y-axis, int szerokość, int wysokość), która ustawia położenie przycisku awt.
Wyjście:
Przykład AWT według stowarzyszenia
Zobaczmy prosty przykład AWT, w którym tworzymy instancję klasy Frame. Tutaj tworzymy komponent TextField, Label i Button w ramce.
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(); } }pobierz ten przykład
Wyjście: