Общ преглед на потока в Java
Преди дълбоко гмуркане в FlowLayout в Java подробности ви позволява да преразгледате някои основни теми, необходими за FlowLayout:
Java AWT : AWT е API за изграждане на GUI или приложения на базата на прозорци.
Някои от основните понятия относно AWT йерархията са, както следва:
1. Container : Container е клас, който съдържа всички компоненти, като бутон, текстово поле, лента със заглавия, menubar и т.н.
2. Компоненти : Компонентите са GUI обекти като бутони, етикет, текстово поле, контролен списък.
Има някои основни компоненти на функции като:
- public void add (Компонент c): добавя компонент към този компонент.
- public void setSize (int width, int height): задава ширината и височината на компонента.
- public void setLayout (LayoutManager m): определя мениджъра на оформлението за компонента.
- public void setVisible (булев статус): определя видимостта на компонента, по подразбиране е невярна.
3. Панел : Панелът е клас контейнер. Той създава пространство за приложение, в което могат да се поберат всички компоненти. Наследява клас контейнер.
Панелът не съдържа menubar или заглавна лента в него, но може да съдържа други компоненти като текстово поле, бутони.
4. Frame : Frame е контейнерен клас. Той съдържа лента от меню и заглавна лента и може да съдържа и други компоненти.
5. Мениджър на оформлението: Мениджърът на оформлението е обект, който реализира интерфейса LayoutManager, за да определи размера и позицията на компонентите в контейнера.
Предлагат се много видове мениджър на оформление, всеки със свои възможности и специфични задачи:
- FlowLayout.
- BorderLayout.
- CardLayout.
- BoxLayout.
- GridLayout.
- GridBagLayout.
- GroupLayout.
- SpringLayout.
Определение на FlowLayout
- FlowLayout е един от мениджърите на оформления, предоставен от AWT, използван в аплети за подреждане на компонентите по начин отляво надясно, подобно на думи в абзац.
- Когато не. От компонентите се увеличава от размера на прозореца, след това по подразбиране Java позволява FlowLayout да подреди компонентите, за да се поберат в прозореца.
- FlowLayout е оформлението по подразбиране, предоставено от диспечера на оформлението. Когато не изберете нито едно оформление, тогава оформлението ще бъде настроено да тече.
- FlowLayout използва някои настройки по подразбиране, като подравняване в центъра с пет пиксела празнини между компонентите хоризонтално и вертикално.
Изравняването се определя от свойството „подравняване“. И полето за подравняване е както следва:
- НАЛЯВО: Той подравнява компонентите вляво.
- НАДЯСНО: Той подравнява компонентите вдясно.
- ЦЕНТЪР: Той подравнява компонентите към центъра.
- ВОДЕЩ: Това ще бъде от водещия ръб на контейнера, т.е. отляво за ориентация отляво надясно.
- ПЪТУВАНЕ: Ще бъде в края на контейнера, т.е. отдясно, отляво надясно
Често използвани функции на FlowLayout
- setAlignment (int align): Задава съответното подравняване на оформлението на контейнера.
- getAlignment (): Поставя подравняването на оформлението на контейнера.
- addLayoutComponent (): Добавя конкретния компонент към оформлението.
- setTitle (String text): Задава заглавието на контейнера с дадения текст.
Конструктори в FlowLayout
- FlowLayout (): Конструира екземпляр на FlowLayout като подравнен в центъра и с 5 пиксела празнина между компонентите.
- FlowLayout (int align): Конструира FlowLayout с дадено подравняване с 5 пиксела празнина между компонентите.
- FlowLayout (int align, int horizontalGap, int horizontalGap): Конструира FlowLayout с дадено подравняване и с дадена хоризонтална и вертикална междина между компонентите.
- Този конструктор ще се подравнява по посоченото поле за подравняване като НАДЯСНО, НАЛЯВО или ЦЕНТЪР, а също така предоставя възможност за добавяне на хоризонтална междина и вертикална междина между компонентите.
Пример за оформление на потока:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Layout extends JFrame
(
private JButton lb;
private JButton rb;
private JButton cb;
private FlowLayout layout;
private Container container;
public Layout()
(
super("the title");
layout = new FlowLayout();
container = getContentPane();
setLayout(layout); //left alignment
lb = new JButton("left");
add(lb);
lb.addActionListener(
new ActionListener()
(
public void actionPerformed(ActionEvent event)
(
layout.setAlignment(FlowLayout.LEFT);
layout.layoutContainer(container);
)
)
);
//right alignment
rb = new JButton("right");
add(rb);
rb.addActionListener(
new ActionListener()
(
public void actionPerformed(ActionEvent event)
(
layout.setAlignment(FlowLayout.RIGHT);
layout.layoutContainer(container);
)
)
);
//center alignment
cb = new JButton("center");
add(cb);
cb.addActionListener(
new ActionListener()(
public void actionPerformed(ActionEvent event)
(
layout.setAlignment(FlowLayout.CENTER);
layout.layoutContainer(container);
)
)
);
)
)
Основен метод на изтичане на потоци в Java
import javax.swing.*;
public class Test
(
public static void main(String() args)
(
Layout l = new Layout();
l.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
l.setSize(300, 100);
l.setVisible(true);
)
)
изход:
Обяснението за горния код
- В горния код бяхме декларирали 3 бутона с помощта на JButton като lb, rb и cb.
- Когато създаваме екземпляра на клас, трябва да видим бутоните, така че да добавяме бутоните към контейнер в самия конструктор на класове.
- Разширяваме класа JFrame
- С функциите setLayout () ние задаваме оформлението като разход.
- За подравняване вляво, когато кликнем върху бутона, наречен „наляво“, бутоните в прозореца трябва да бъдат подравнени вляво.
- За да работи това, конкретният бутон се добавя на панела на прозореца, а при събитието с щракване на този бутон, оформлението ще бъде зададено вляво.
- В горния код setAlignment (FlowLayout.LEFT) ще настрои подравняването на оформлението на панела вляво. FlowLayout.LEFT е полето, достъпно за подравняване. По същия начин FlowLayout.RIGHT, FlowLayout.CENTER, FlowLayout.TRAILING, FlowLayout.LEADING са някои от другите полета, използвани за задаване на подравняване.
- Моля, обърнете внимание, че тези полета за подравняване ще приведат всички компоненти вляво, вдясно или в центъра.
- Не зависи от размера на вашия прозорец. Той ще коригира и подравнява вашите компоненти с посоченото подравняване.
- Както направихме за подравняване на ляво по подобен начин, ние разработихме за централно и дясно подравняване. И накрая, ние разработихме Test Class за писане на основния метод за тестване на нашия FlowLayout Java код.
- Чрез създаване на екземпляр от класа Layout в основния метод задаваме размера на прозореца и видимостта на компонента на true.
Заключение - Flowlayout в Java
Този урок ви дава основната идея защо Java има FlowLayout и какви са функционалностите на нея. FlowLayout е оформлението по подразбиране поради своята лекота и прецизност на подравняването. Запомнете, че всяка концепция става още по-ясна, когато я кодирате и практикувате. Нека в кода ви дойде грешка, не се колебайте да запазите кодирането и да разберете точно концепцията.
Препоръчителни статии
Това е ръководство за Flowlayout в Java. Тук обсъждаме конструкторите и често използваните функции на FlowLayout. Можете също да разгледате следната статия, за да научите повече -
- JPanel в Java
- Размяна в Java
- Factorial в Java
- Сортиране в Java
- Пълно ръководство за сортиране в C # с примери
- HTML оформление
- Функция за сортиране в Python с примери
- Пълно ръководство за Factorial в C #