Java istnieje w branży już od jakiegoś czasu. Ma swoje korzenie głęboko w różnych domenach świata programowania, czy to aplikacji internetowej, aplikacji mobilnej czy systemów wbudowanych. Nawet jeśli mówisz o programowaniu GUI, zapewnia bogaty zestaw bibliotek do tworzenia wysoce interaktywnych GUI opakowanych w API AWT. W tym samouczku Java AWT przedstawię krótkie wprowadzenie do niego wraz z jego komponentami.
Poniżej znajdują się tematy omówione w tym samouczku Java AWT:
- Co to jest Java AWT?
- Funkcje AWT w Javie
- Aspekty interfejsu użytkownika AWT
- Hierarchia Java AWT
- Komponenty AWT
- Tworzenie kalkulatora w Java AWT
Zacznijmy.
Co to jest AWT w Javie?
Abstract Window Toolkit akronimowany jako AWT to plikzestaw narzędzi zajęcia w Javie, który pomaga programiście w tworzeniu elementów graficznych i graficznego interfejsu użytkownika. Jest częścią JFC (Java Foundation Classes) opracowanej przez Sun Microsystems. Interfejs API AWT w języku Java składa się przede wszystkim z obszernego zestawu klas i metod, które są wymagane do tworzenia i zarządzania graficznym interfejsem użytkownika (GUI) w uproszczony sposób. Został opracowany w celu zapewnienia wspólnego zestawu narzędzi do projektowania wieloplatformowych interfejsów GUI. Jedną z ważnych cech AWT jest zależność od platformy. Oznacza to, że narzędzia AWT wykorzystują natywne zestawy narzędzi platform, na których są wdrażane. Takie podejście pomaga wzachowanie wyglądu i stylu każdej platformy. Ale jak już powiedziano, wszystko ma swoją cenę, istnieje poważna wada tego podejścia. Po uruchomieniu na różnych platformach ze względu na zależność platformy będzie wyglądać inaczej na każdej platformie. Utrudnia to spójność i estetykę aplikacji.
Oprócz tego, że są zależne od platformy, istnieje kilka innych funkcji klas AWT, o których będę mówić w następnej sekcji tego samouczka Java AWT.
Funkcje AWT w Javie
- AWT to zestaw rodzimych użytkowników berło składniki
- Opiera się na solidnym modelu obsługi zdarzeń
- Udostępnia narzędzia graficzne i obrazowania, takie jak klasy kształtu, koloru i czcionki
- AWT korzysta również z menedżerów układów, co pomaga zwiększyć elastyczność układów okien
- Klasy transferu danych są również częścią AWT, która pomaga w wycinaniu i wklejaniu w natywnym schowku platformy
- Obsługuje szeroką gamę bibliotek niezbędnych do tworzeniagrafiki do produktów związanych z grami, usług bankowych, celów edukacyjnych itp.
Teraz, gdy wiesz już o różnych funkcjach AWT, pozwól, że przedstawię aspekty GUI w następnej sekcji tego samouczka Java AWT.
java znajdź najwyższą wartość w tablicy
Aspekty interfejsu użytkownika AWT
Każdy interfejs użytkownika będzie składał się z trzech jednostek:
- Elementy interfejsu użytkownika : Odnosi się do podstawowych elementów wizualnych, które są widoczne dla użytkownika i używane do interakcji z aplikacją. AWT w Javie zawiera obszerną listę powszechnie używanych i typowych elementów.
- Układy : Określają sposób organizacji elementów interfejsu użytkownika na ekranie i zapewniają ostateczny wygląd i działanie GUI.
- Zachowanie : Definiują zdarzenia, które powinny wystąpić, gdy użytkownik wchodzi w interakcję z elementami interfejsu użytkownika.
jaMam nadzieję, że masz już krótkie pojęcie o AWT i jego roli w każdej aplikacji. W następnej części tego samouczka Java AWT, rzucę trochę światła na całą hierarchię AWT.
Hierarchia AWT
Jak widać na powyższym diagramie, komponent jest nadklasą wszystkich kontrolek GUI. Jest to klasa abstrakcyjna, którazawiera wszystkie atrybuty komponentu wizualnego ireprezentuje obiekt z graficzną reprezentacją. Instancja klasy komponentów jest zasadniczo odpowiedzialna za wygląd i działanie bieżącego interfejsu.
Poniżej przedstawiam ogólny opis klasyjava.awt.Component:
public abstract class Component extends Object implementuje ImageObserver, MenuContainer, Serializable {// class body}
Komponenty AWT
1. Pojemniki
Kontener w Javie AWT jest komponentem używanym do przechowywania innych komponentów, takich jak pola tekstowe, przyciski itp. Jest to podklasa klasyjava.awt.Component i jest odpowiedzialny za śledzenie dodawanych komponentów.Istnieją cztery typy kontenerów udostępnianych przez AWT w Javie.
Rodzaje pojemników
- Okno : Jest to instancja klasy Window bez obramowania ani tytułu. Służy do tworzenia plikuokno najwyższego poziomu.
- Rama : Ramka jest podklasą okna i zawiera tytuł, obramowanie i paski menu. Jest dostarczany z płótnem do zmiany rozmiaru i jest najczęściej używanym kontenerem do tworzenia aplikacji AWT. Jest w stanie pomieścić różne elementy, takie jak przyciski, pola tekstowe, paski przewijania itp.Ramkę Java AWT można utworzyć na dwa sposoby:
- Poprzez tworzenie instancji klasy Frame
- Rozszerzając klasę Frame
- Dialog: Klasa Dialog jest również podklasą klasy Window i zawiera obramowanie oraz tytuł. Instancja klasy Dialog zawsze wymaga, aby istniała skojarzona instancja klasy Frame.
- Płyta : Panel jest konkretną podklasą kontenera i nie zawiera żadnego paska tytułu, paska menu ani obramowania. Klasa panelu to ogólny kontener do przechowywania komponentów GUI. Aby dodać komponenty, potrzebujesz instancji klasy Panel.
To wszystko dotyczyło kontenera i jego typów, przejdźmy teraz dalej w tym artykule samouczka Java AWT i poznajmy pozostałe komponenty.
2. Przycisk
Klasa java.awt.Button służy do tworzenia przycisku z etykietą. Element GUI, który uruchamia określony program akcja po kliknięciu. Klasa Button ma dwa konstruktorzy :
// Skonstruuj przycisk z podaną etykietą public Button (String btnLabel) // Skonstruuj przycisk z pustą etykietą public Button ()
Poniżej wymieniono kilka metod udostępnianych przez tę klasę:
// Pobierz etykietę tej instancji Button public String getLabel () // Ustaw etykietę tej instancji Button public void setLabel (String btnLabel) // Włącz lub wyłącz ten przycisk. Wyłączony przycisk nie może być kliknięty public void setEnable (boolean włączony)
3. Pole tekstowe
DOjava.awt.TextFieldclass tworzy jednowierszowe pole tekstowe, w którym użytkownicy mogą wprowadzać teksty. Klasa TextField ma trzy konstruktory, którymi są:
// Skonstruuj instancję TextField z podanym początkowym ciągiem tekstowym i liczbą kolumn. public TextField (String initialText, int columns) // Skonstruuj instancję TextField z podanym początkowym ciągiem tekstowym. public TextField (String initialText) // Skonstruuj instancję TextField z liczbą kolumn. public TextField (kolumny int)
Kilka metod udostępnianych przez klasę TextField to:
// Pobierz bieżący tekst z tej instancji TextField public String getText () // Ustaw wyświetlany tekst w tej instancji TextField public void setText (String strText) // Ustaw wartość TextField na edytowalną (odczyt / zapis) lub nieedytowalną (odczyt -only) public void setEditable (boolean editable)
4. Etykieta
Klasa java.awt.Label udostępnia opisowy ciąg tekstowy, który jest widoczny w interfejsie GUI. Obiekt AWT Label to komponent służący do umieszczania tekstu w kontenerze. Klasa Label ma trzy konstruktorzy które są:
// Skonstruuj etykietę z podanym ciągiem tekstowym, wyrównaniem tekstu public Label (String strLabel, int alignment) // Skonstruuj etykietę z podanym tekstem String public Label (String strLabel) // Skonstruuj początkowo pustą Label public Label ( )
Ta klasa zapewnia również 3 stałe, którymi są:
public static final LEFT // Label.LEFT public static final PRAWO // Label.RIGHT public static final CENTER // Label.CENTER
Poniżej wymieniłem publiczne metody zapewniane przez tę klasę:
public String getText () public void setText (String strLabel) public int getAlignment () //Label.LEFT, Label.RIGHT, Label.CENTER public void setAlignment (int alignment)
5. Płótno
Klasa Canvas reprezentuje prostokątny obszar, w którym można rysować w aplikacji lub odbierać dane wejściowe utworzone przez użytkownika.
6. Wybór
Klasa Choice służy do reprezentowania wyskakującego menu opcji. Wybrany wybór jest wyświetlany w górnej części danego menu.
7. Pasek przewijania
Obiekt klasy Scrollbar służy do dodawania poziomego i pionowego paska przewijania w interfejsie GUI. Pozwala użytkownikowi zobaczyć niewidoczną liczbę wierszy i kolumn.
8. Lista
Obiekt klasy List reprezentuje listę elementów tekstowych. Używając class użytkownik może wybrać jedną lub wiele pozycji.
9. CheckBox
Pole wyboru to klasa to element graficzny używany do tworzenia pola wyboru. Ma dwie opcje stanu prawda i fałsz. W dowolnym momencie może mieć jedno z dwóch.
To wszystko, co musisz wiedzieć o komponentach AWT. Teraz mam nadzieję, że jesteś gotowy, aby zmoczyć stopy z aplikacją Java AWT.
W następnej sekcji tego samouczka Java AWT pokażę, jak zbudować kalkulator przy użyciu komponentów AWT.
Tworzenie kalkulatora w Java AWT
Tutaj pokażę ci, jak stworzyć kalkulator za pomocą AWT, w którym będziesz mógł wykonywać podstawowe operacje matematyczne. Poniżej znajduje się zrzut ekranu przedstawiający wygląd Twojego kalkulatora:
Teraz, aby to zbudować, musisz wpisać następujący kod:
pakiet edureka.awt import java.awt. * import java.awt.event.ActionEvent import java.awt.event.ActionListener klasa Kalkulator rozszerza Frame implementuje ActionListener {Etykieta lb1, lb2, lb3 TextField txt1, txt2, txt3 Przycisk btn1, btn2, btn3, btn4, btn5, btn6, btn7 public Calculator () {lb1 = new Label ('Var 1') lb2 = new Label ('Var 2') lb3 = new Label ('Result') txt1 = new TextField (10) txt2 = new TextField (10) txt3 = new TextField (10) btn1 = new Button ('Add') btn2 = new Button ('Sub') btn3 = new Button ('Multi') btn4 = new Button ('Div') btn5 = new Button ('Mod') btn6 = new Button ('Reset') btn7 = new Button ('Close') add (lb1) add (txt1) add (lb2) add (txt2) add (lb3) add (txt3 ) add (btn1) add (btn2) add (btn3) add (btn4) add (btn5) add (btn6) add (btn7) setSize (200,200) setTitle ('Kalkulator') setLayout (new FlowLayout ()) // setLayout ( new FlowLayout (FlowLayout.RIGHT)) // setLayout (new FlowLayout (FlowLayout.LEFT)) btn1.addActionListener (this) btn2.addActionListener (this) btn3.addActionListener (this) btn4.addActionListen er (this) btn5.addActionListener (this) btn6.addActionListener (this) btn7.addActionListener (this)} public void actionPerformed (ActionEvent ae) {double a = 0, b = 0, c = 0 try {a = Double.parseDouble (txt1.getText ())} catch (NumberFormatException e) {txt1.setText ('Nieprawidłowe dane wejściowe')} try {b = Double.parseDouble (txt2.getText ())} catch (NumberFormatException e) {txt2.setText (' Nieprawidłowe dane wejściowe ')} if (ae.getSource () == btn1) {c = a + b txt3.setText (String.valueOf (c))} if (ae.getSource () == btn2) {c = a - b txt3.setText (String.valueOf (c))} if (ae.getSource () == btn3) {c = a * b txt3.setText (String.valueOf (c))} if (ae.getSource () = = btn4) {c = a / b txt3.setText (String.valueOf (c))} if (ae.getSource () == btn5) {c = a% b txt3.setText (String.valueOf (c))} if (ae.getSource () == btn6) {txt1.setText ('0') txt2.setText ('0') txt3.setText ('0')} if (ae.getSource () == btn7) {System .exit (0)}} public static void main (String [] args) {Calculator calC = new Calculator () calC.setVisible (true) calC.setLocation (300,300)}}
Jak pewnie zauważyłeś, użyliśmy tutaj tylko funkcji. Zawsze możesz dodać więcej funkcji do swojej aplikacji i stworzyć pełnoprawny Kalkulator.
Na tym kończymy ten samouczek Java AWT.Jeśli chcesz dowiedzieć się więcej o Javie, możesz skorzystać z naszego .
Teraz, gdy zrozumiałeś, czym jest samouczek Java AWT, zapoznaj się z autorstwa Edureka, zaufanej firmy zajmującej się edukacją online, z siecią ponad 250 000 zadowolonych uczniów rozsianych po całym świecie. Szkolenie i certyfikacja Java J2EE i SOA Edureka jest przeznaczony dla studentów i profesjonalistów, którzy chcą zostać programistami Java. Kurs ma na celu zapewnienie przewagi w programowaniu w języku Java i szkolenie zarówno podstawowych, jak i zaawansowanych koncepcji języka Java, a także różnych struktur Java, takich jak Hibernate i Spring.
Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy w tym artykule „Java AWT Tutorial”, a my skontaktujemy się z Tobą tak szybko, jak to możliwe.