logo

Урок за Java AWT

Java AWT (Abstract Window Toolkit) е API за разработване на графичен потребителски интерфейс (GUI) или базирани на Windows приложения в Java.

Компонентите на Java AWT са зависими от платформата, т.е. компонентите се показват според изгледа на операционната система. AWT е тежък, т.е. неговите компоненти използват ресурсите на основната операционна система (ОС).

Файлът java.awt пакет осигурява класове за AWT API като TextField, Label, TextArea, RadioButton, CheckBox, Choice, List и др.

Урокът за AWT ще помогне на потребителя да разбере програмирането на Java GUI с прости и лесни стъпки.

Защо AWT е независим от платформата?

Java AWT извиква основната платформа извиква подпрограмата на основната платформа (операционни системи) за създаване на API компоненти като TextField, ChechBox, бутон и др.

Например AWT GUI с компоненти като TextField, етикет и бутон ще има различен външен вид и усещане за различните платформи като Windows, MAC OS и Unix. Причината за това е, че платформите имат различен изглед за своите собствени компоненти и AWT директно извиква естествената подпрограма, която създава тези компоненти.

С прости думи, AWT приложение ще изглежда като Windows приложение в Windows OS, докато ще изглежда като Mac приложение в MAC OS.

Йерархия на Java AWT

Йерархията на Java AWT класовете е дадена по-долу.

Урок за Java AWT

Компоненти

Всички елементи като бутон, текстови полета, ленти за превъртане и т.н. се наричат ​​компоненти. В Java AWT има класове за всеки компонент, както е показано на горната диаграма. За да поставим всеки компонент на определена позиция на екрана, трябва да ги добавим към контейнер.

Контейнер

Контейнерът е компонент в AWT, който може да съдържа други компоненти като бутони, текстови полета, етикети и т.н. Класовете, които разширяват класа на контейнера, са известни като контейнер, като например Рамка, диалог и Панел .

импорт мравка

Това е основно екран, където компонентите са поставени на техните специфични места. По този начин той съдържа и контролира оформлението на компонентите.

Забележка: Самият контейнер е компонент (вижте горната диаграма), следователно можем да добавим контейнер вътре в контейнера.

Видове контейнери:

В Java AWT има четири типа контейнери:

  1. прозорец
  2. Панел
  3. Кадър
  4. Диалог

прозорец

Прозорецът е контейнер, който няма граници и ленти с менюта. Трябва да използвате рамка, диалогов прозорец или друг прозорец за създаване на прозорец. Трябва да създадем екземпляр на клас Window, за да създадем този контейнер.

Панел

Панелът е контейнер, който не съдържа заглавна лента, рамка или лента с менюта. Това е общ контейнер за съхранение на компонентите. Може да има други компоненти като бутон, текстово поле и т.н. Екземпляр на клас Panel създава контейнер, в който можем да добавяме компоненти.

Кадър

Рамката е контейнерът, който съдържа заглавна лента и рамка и може да има ленти с менюта. Може да има други компоненти като бутон, текстово поле, лента за превъртане и т.н. Frame е най-широко използваният контейнер при разработването на AWT приложение.

Полезни методи на клас компоненти

МетодОписание
публично празно добавяне (компонент c)Вмъква компонент върху този компонент.
public void setSize(int ширина,int височина)Задава размера (ширина и височина) на компонента.
public void setLayout(LayoutManager m)Определя мениджъра на оформлението за компонента.
public void setVisible (булев статус)Променя видимостта на компонента, по подразбиране false.

Пример за Java AWT

За да създадете прост пример за AWT, имате нужда от рамка. Има два начина за създаване на GUI с помощта на Frame в AWT.

  1. Чрез разширяване на клас Frame ( наследяване )
  2. Чрез създаване на обект от клас Frame ( асоциация )

AWT Пример чрез наследяване

Нека да видим прост пример за AWT, където наследяваме клас Frame. Тук показваме компонент Бутон на рамката.

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(); } } 
изтеглете този пример

Методът setBounds(int x-axis, int y-axis, int width, int height) се използва в горния пример, който задава позицията на бутона awt.

Изход:

Урок за Java AWT

AWT Пример по асоциация

Нека видим прост пример за AWT, където създаваме екземпляр на клас Frame. Тук създаваме TextField, Label и Button компонент на Frame.

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(); } } 
изтеглете този пример

Изход:

Урок за Java AWT