Увод у ГридБагЛаиоут на Јави
ГридБагЛаиоут је један од најкомплекснијих, најмоћнијих и најсложенијих менаџера изгледа које нуди Јава. ГридБагЛаиоут поравнава компоненте вертикално, хоризонтално или дуж основне линије. Компоненте могу бити исте ширине или не, на основу захтева. Они одржавају и управљају динамичким ћелијама где се подручје приказа састоји од једне или више ћелија. Ове компоненте су повезане са инстанцом ГридБагЦонстраинтс у којој објекти ограничења помажу у уређењу подручја приказа компоненти на мрежи. ГридБагЛаиоут је у пакету јава.авт. Погледајмо конструктор, методе и имплементацију ГридБагЛаиоут-а у следећим одељцима.
Конструктори ГридБагЛаиоут на Јави
Јава.авт.ГридБагЛаиоут се декларише користећи следећу синтаксу.
public class GridBagLayout extends Object implements LayoutManager2, Serializable
ГридБагЛаиоут () је конструктор ГридБагЛаиоут који помаже у креирању менаџера за изглед мрежне вреће. Прво, креирамо објект за класу ГридБагЛаиоут уз помоћ конструктора без аргумената
GridBagLayout obj = new GridBagLayout();
setLayout(obj);
Погледајмо нека од поља за класу јава.авт.ГридБагЛаиоут.
- ПРЕФЕРРЕД_СИЗЕ
Одређује жељену величину решетке од компоненте. Овде такође може бити јаз који се мора користити за одређену вредност распона.
- ДЕФАУЛТ_СИЗЕ
Одређује величину решетке из компоненте. Овде такође може бити јаз који се мора користити за одређену вредност распона.
- дефаултЦонстраинтс
Овдје се задржава инстанца ограничења у врећици која садржи задане вриједности.
- лаиоутИнфо
Детаљи распореда Гридбаг-а се држе у овоме.
- редВеигхтс
Овде се задржавају превладавање тежине редова.
- МАКСГРИДСИЗЕ
Помаже у компатибилности уназад.
- ровХеигхтс
Поништавања се држе на минималним висинама реда.
Методе ГридБагЛаиоут у Јави
Следи неколико метода ГридБагЛаиоут-а који се могу користити у различите сврхе.
- ремовеЛаиоутЦомпонент (Цомпонент цмпн)
Из распореда се одређена компонента уклања.
- аддЛаиоутЦомпонент (Цомпонент цмпн, објецт иконе објекта)
Наведени објект ограничења додаје се изгледу наведене компоненте.
- гетЛаиоутАлигнментИ (контејнер цнт)
Поравнање дуж оси и је враћено.
- аддЛаиоутЦомпонент (Назив низа, Цомпонент цмпн)
Наведени објект ограничења додаје се изгледу наведене компоненте са одређеним именом.
- тоСтринг ()
Вриједности у распореду врећа с мрежом враћају се у приказу низа.
- гетЛаиоутАлигнментКс (контејнер цнт)
Поравнање дуж оси к је враћено.
- гетЦонстраинтс (Цомпонент цмпн)
Специфична ограничења компоненте се враћају.
- макЛаиоутСизе (цнт контејнера)
Компоненте у спремнику се враћају са максималним димензијама.
- минималЛаиоутСизе (цнтмин контејнера)
Компоненте у спремнику се враћају са минималним димензијама.
- преференцеЛаиоутСизе (цнтпреф контејнера)
Компоненте у спремнику се враћају са жељеним димензијама.
- органГрид (контејнер цнт)
Помаже у уређењу мреже.
- прилагоди гравитацију (ГридБагЦонстраинтс цн, рецтангле рецт)
Овисно о геометрији ограничења, ова метода прилагођава ширину, к, висину и и правилним вриједностима.
- гетЛаиоутДименсионс ()
Овом се методом утврђује ширина колоне и висина редова.
- гетЛаиоутИнфо (цнт контејнера, инт сизефлаг)
Застарела је и користи се за компатибилност назад.
- гетЛаиоутОригин ()
Оно одређује порекло подручја изгледа у графичком координатном простору циљаног контејнера.
- гетЛаиоутВеигхтс ()
Тежине колоне и висина редова одређују се овом методом.
- гетМинСизе (Цонтаинер цнт, ГридБагЛаиоутИнфо инф)
На основу детаља добијених од гетЛаиоутИнфо враћа се минимална величина главног рачунала.
- инвалидатеЛаиоут (Контејнерски цнт)
Ако су неке информације из кеширања присутне у управитељу изгледа, он ће поништити изглед.
- лаиоутЦонтаинер (контејнер цнт)
Наведени спремник биће постављен помоћу овог решеткастог распореда врећица.
- Тачка локације (инт к, инт и)
Овом методом се идентификује ћелија која садржи поменуту тачку користећи к и и.
- лоокупЦонстраинтс (Цомпонент цмп)
Ограничења наведене компоненте су пронађена.
- сетЦонстраинтс (Цомпонент цмп, ГридБагЦонстраинтс цонст)
Ограничења поменуте компоненте постављена су у изгледу.
Програм за имплементацију ГридБагЛаиоут у Јави
Сада, да видимо програме за имплементацију ГридБагЛаиоут у Јави.
Програм # 1
// Java program to implement GridBagLayout layout manager
//import the packages needed
import java.awt.Button;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import javax.swing.*;
//GridExample class extends JFrame
public class GridExample extends JFrame(
//main method
public static void main(String() args) (
//object of the class GridExample
GridExample ge = new GridExample();
)
//constructor of class GridExample
public GridExample() (
// Object of GridBagLayout
GridBagLayout gl = new GridBagLayout();
// Object of GridBagConstraints
GridBagConstraints gc = new GridBagConstraints();
// GridBagLayout is set
setLayout(gl);
// Method to set JFrame Title.
setTitle("Example for GridBag Layout ");
GridBagLayout ll = new GridBagLayout();
this.setLayout(ll);
//components in horizontal
gc.fill = GridBagConstraints.HORIZONTAL;
//left most row and top most column
gc.gridx = 0;
gc.gridy = 0;
//Button A added
this.add(new Button("Button A"), gc);
gc.gridx = 1;
gc.gridy = 0;
//Button B added
this.add(new Button("Button B"), gc);
gc.fill = GridBagConstraints.HORIZONTAL;
//increase component height by 20 pixels
gc.ipady = 20;
gc.gridx = 0;
gc.gridy = 1;
//Button C added
this.add(new Button("Button C"), gc);
gc.gridx = 1;
gc.gridy = 1;
///Button D added
this.add(new Button("Button D"), gc);
gc.gridx = 0;
gc.gridy = 2;
gc.fill = GridBagConstraints.HORIZONTAL;
gc.gridwidth = 2;
//Button E added
this.add(new Button("Button E"), gc);
// set the size
setSize(200, 300);
setPreferredSize(getSize());
//GUI visible to user
setVisible(true);
//exit on clicking close button
setDefaultCloseOperation(EXIT_ON_CLOSE);
)
)
Узорак излаза:
Овде се ствара ГридБагЛаиоут са пет тастера као што су А, Б, Ц, Д и Е. Неколико метода се користи за подешавање величине, наслова, видљивости ГУИ-ја итд.
Програм # 2
//Java program to implement GridBagLayout
import java.awt.*;
import javax.swing.*;
public class GridExample (
//main method
public static void main(String() args) (
//object of JFrame
JFrame jf = new JFrame();
//exit on clicking close button
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//object of container
Container cn = jf.getContentPane();
//set layout
cn.setLayout(new GridBagLayout());
//object of constraints
GridBagConstraints gc = new GridBagConstraints();
gc.gridx = 0;
gc.gridy = GridBagConstraints.RELATIVE;
cn.add(new JButton("Button A"));
cn.add(new JButton("Button B"));
gc.fill = GridBagConstraints.HORIZONTAL;
cn.add(new JButton("Button c"));
// set the size
jf.setSize(400, 300);
//GUI visible to user
jf.setVisible(true);
)
)
Узорак излаза:
Овај програм имплементира ГридБагЛаиоут у другој методи. Али, овде наслов није постављен и присутна су само 3 дугмета.
Закључак
ГридБагЛаиоут је један од моћних, флексибилних и сложених изгледа менаџера у Јави који се нуди јава.авт пакетом. Поравнава компоненте вертикално, водоравно или дуж линије. Синтакса, конструктор, методе и имплементација ГридБагЛаиоут-а су објашњени у овом документу.
Препоручени чланци
Ово је водич за ГридБагЛаиоут на Јави. Овде смо расправљали о методама и програму за имплементацију ГридБагЛаиоут-а у Јави. Можда ћете такође погледати следеће чланке да бисте сазнали више -
- Изглед у Јави
- ЈДиалог на Јави
- Јава напомене
- БордерЛаиоут у Јави
- Јава Деплоимент Тоолс
- ЈФраме у Јави
- ХТМЛ Лаиоут