Въведение в AWT в Java
Java AWT е известен още като Abstract Window Toolkit е API, който се използва за разработване или на GUI, или на базирани на прозореца приложения в Java. Компонентите на Java AWT са зависими от платформата, което означава, че те се показват според изгледа на операционната система. Тежък е и фактът, че неговите компоненти използват ресурсите на операционната система. Java. awt пакет осигурява класове за AWT api. Например TextField, CheckBox, Choice, Label, TextArea, Radio Button, List и т.н.
AWT йерархия
Контейнер
Container е един от компонентите в AWT, който съдържа други компоненти като бутони, текстови полета, етикети и т.н. Класовете, които разширяват класа Container, са известни като контейнери като Frame, Dialog и Panel, както е показано в йерархията.
Видове контейнери:
Както е показано по-горе, контейнер се отнася до местоположението, където могат да се добавят компоненти като текстово поле, бутон, квадратче за проверка и т.н. Общо има четири типа контейнери, налични в AW, тоест Window, Frame, Dialog и Panel. Както е показано в йерархията по-горе, Frame и Dialog са подкласове на клас Windows.
прозорец
Прозорецът е контейнер, който няма рамки и ленти с менюта. За да създадете прозорец, можете да използвате рамка, диалогов прозорец или друг прозорец.
панел
Панелът е контейнер / клас, който не съдържа заглавната лента и лентите с менюта. Той има други компоненти като бутон, текстово поле и т.н.
Dialog
Диалоговият прозорец е контейнерът или класът с граница и заглавие. Не можем да създадем инстанция на класа Dialog без свързана инстанция на съответния клас Frame.
Trim
Frame е контейнерът или класът, съдържащ заглавната лента и може също да има ленти от менюто. Той може да има и други компоненти като текстово поле, бутон и т.н.
Защо AWT зависи от платформата?
Java Abstract Window Toolkit извиква родна платформа, т.е. подпрограма на операционната система, за да създаде компоненти като текстово поле, квадратче за отметка, бутон и др. Например, AWT GUI, съдържащ бутон, би имал разнообразен вид и усещане в различни платформи като Windows, Mac OS и Unix и т.н., тъй като тези платформи имат различен външен вид и усещане за съответните собствени бутони и тогава AWT директно ще извика тяхната родна подпрограма, която ще създаде бутона. С прости думи, изграждането на приложение на AWT би изглеждало по-скоро като приложение за Windows, когато се изпълнява на Windows, обаче, същото приложение ще изглежда като приложение за Mac, когато се изпълнява на операционна система Mac.
Основни методи на клас компоненти
- public void add (Компонент c): Този метод ще добави компонент към този компонент.
- public void setSize (int width, int height): Този метод ще зададе размер (ширина и височина) на конкретния компонент.
- public void setVisible (булев статус): Този метод би променил видимостта на компонента, което по подразбиране е невярно.
- public void setLayout (LayoutManager m): Този метод ще определи мениджъра на оформлението за конкретния компонент.
Пример за Java AWT
Можем да създадем GUI с помощта на Frame по два начина:
Или чрез разширяване на клас Frame или чрез създаване на екземпляра от клас Frame
Нека покажем това и от двата примера, първо разширяващ клас Frame:
import java.awt.*;/* Extend the Frame class here,
*thus our class "Example" would behave
*like a Frame
*/public class Example extends Frame
(Example()
(Button b=new Button("Button!!");
//setting button position on screen
b.setBounds(50, 50, 50, 50);
//adding button into frame
add(b);
//Setting width and height
setSize(500, 300);
//Setting title of Frame
setTitle("This is First AWT example");
//Setting the layout for the Frame
setLayout(new FlowLayout());
/*By default frame is not visible so
*we are setting the visibility to true
*to make it visible.
*/
setVisible(true);
)
public static void main(String args())(
//Creating the instance of Frame
Example fr=new Example();
)
)
Нека го покажем с втория пример, тоест чрез създаване на екземпляр от клас Frame
import java.awt.*;
public class Example (
Example()
(
//Creating Frame
Frame f=new Frame();
//Creating a label
Label l = new Label("User: ");
//adding label to the frame
f.add(l);
//Creating Text Field
TextField t = new TextField();
//adding text field to the frame
f.add(t);
//setting frame size
f.setSize(500, 300);
//Setting the layout for the Frame
f.setLayout(new FlowLayout());
f.setVisible(true);
)
public static void main(String args())
(Example ex = new Example();
)
)
Оформления в AWT
В AWT има 2 оформления, които са както следва:
- Оформлението на потока е оформление по подразбиране, което означава, че когато не зададете каквото и да е оформление в кода си, тогава конкретното оформление ще бъде зададено на По подразбиране. Разположението на потока би поставило компоненти като текстови полета, бутони, етикети и т.н. под формата на ред и ако хоризонталното пространство не е достатъчно дълго, за да побере всички компоненти, то ще ги добави в следващ ред и цикълът продължава. Няколко точки за оформлението на потока:
- Всички редове в оформлението на потока са подравнени по подразбиране в центъра. Но, ако е необходимо, можем да зададем подравняването отляво или отдясно.
- Хоризонталната и вертикалната междина между всички компоненти е 5 пиксела по подразбиране.
- По подразбиране ориентацията на компонентите е отляво надясно, което означава, че компонентите ще бъдат добавени отляво надясно, както се изисква, но можем да го променим отдясно на ляво, когато е необходимо.
- Графично оформление, при което можем да добавим компоненти като текстови полета, бутони, етикети и т.н. към конкретни пет Тези региони са известни като PAGE_START, LINE_START, CENTER, LINE_END, PAGE_END.
Метод за оформление на границата е:
обществена BorderLayout (int hgap, int vgap)
Той ще конструира оформление на граница с пропуските, посочени между компонентите. Хоризонталната празнина се определя от hgap, а вертикалната празнина се определя от vgap.
Параметрите са:
hgap - хоризонталната празнина.
vgap - вертикалната празнина.
Можем също да постигнем същото, като използваме метода setHgap (int hgap) за хоризонталната празнина между компонентите и метода setVgap (int vgap) за вертикалната празнина.
Извод: Какво е AWT в Java?
Ето защо можем да заключим, че AWT е създаден с цел да предостави общ набор от инструменти за GUI дизайн, които могат да работят на различни платформи. Тези инструменти запазиха външния вид и усещането на всяка платформа.
Препоръчителни статии
Това е ръководство за това какво е AWT в Java. Тук сме обсъдили йерархията, основния метод, пример и оформления на AWT в Java. Можете също да разгледате следните статии, за да научите повече -
- Какво представлява дизайнерският модел в Java?
- Ориентиран към Javascript
- Какво е JavaScript?
- Какво е разработка на софтуер?
- Преглед на BorderLayout в Java