Јава ЛаиоутМанагерс
ЛаиоутМанагери се користе за распоређивање компоненти на одређени начин. Тхе Јава ЛаиоутМанагерс олакшава нам контролу позиционирања и величине компоненти у ГУИ формама. ЛаиоутМанагер је интерфејс који имплементирају све класе менаџера распореда. Постоје следеће класе које представљају менаџере распореда:
како извршити скрипту
- јава.авт.БордерЛаиоут
- јава.авт.ФловЛаиоут
- јава.авт.ГридЛаиоут
- јава.авт.ЦардЛаиоут
- јава.авт.ГридБагЛаиоут
- јавак.свинг.БокЛаиоут
- јавак.свинг.ГроупЛаиоут
- јавак.свинг.СцроллПанеЛаиоут
- јавак.свинг.СпрингЛаиоут итд.
Јава БордерЛаиоут
БордерЛаиоут се користи за распоређивање компоненти у пет региона: север, југ, исток, запад и центар. Сваки регион (област) може да садржи само једну компоненту. То је подразумевани изглед оквира или прозора. БордерЛаиоут обезбеђује пет константи за сваки регион:
Конструктори класе БордерЛаиоут:
Пример класе БордерЛаиоут: Коришћење конструктора БордерЛаиоут().
Назив документа: Бордер.јава
import java.awt.*; import javax.swing.*; public class Border { JFrame f; Border() { f = new JFrame(); // creating buttons JButton b1 = new JButton('NORTH');; // the button will be labeled as NORTH JButton b2 = new JButton('SOUTH');; // the button will be labeled as SOUTH JButton b3 = new JButton('EAST');; // the button will be labeled as EAST JButton b4 = new JButton('WEST');; // the button will be labeled as WEST JButton b5 = new JButton('CENTER');; // the button will be labeled as CENTER f.add(b1, BorderLayout.NORTH); // b1 will be placed in the North Direction f.add(b2, BorderLayout.SOUTH); // b2 will be placed in the South Direction f.add(b3, BorderLayout.EAST); // b2 will be placed in the East Direction f.add(b4, BorderLayout.WEST); // b2 will be placed in the West Direction f.add(b5, BorderLayout.CENTER); // b2 will be placed in the Center f.setSize(300, 300); f.setVisible(true); } public static void main(String[] args) { new Border(); } }
Излаз:
преузмите овај примерПример БордерЛаиоут класе: Коришћење БордерЛаиоут(инт хгап, инт вгап) конструктора
Следећи пример умеће хоризонталне и вертикалне празнине између дугмади користећи параметризовани конструктор БордерЛаиоут(инт хгап, инт гап)
Назив документа: БордерЛаиоутЕкампле.јава
// import statement import java.awt.*; import javax.swing.*; public class BorderLayoutExample { JFrame jframe; // constructor BorderLayoutExample() { // creating a Frame jframe = new JFrame(); // create buttons JButton btn1 = new JButton('NORTH'); JButton btn2 = new JButton('SOUTH'); JButton btn3 = new JButton('EAST'); JButton btn4 = new JButton('WEST'); JButton btn5 = new JButton('CENTER'); // creating an object of the BorderLayout class using // the parameterized constructor where the horizontal gap is 20 // and vertical gap is 15. The gap will be evident when buttons are placed // in the frame jframe.setLayout(new BorderLayout(20, 15)); jframe.add(btn1, BorderLayout.NORTH); jframe.add(btn2, BorderLayout.SOUTH); jframe.add(btn3, BorderLayout.EAST); jframe.add(btn4, BorderLayout.WEST); jframe.add(btn5, BorderLayout.CENTER); jframe.setSize(300,300); jframe.setVisible(true); } // main method public static void main(String argvs[]) { new BorderLayoutExample(); } }
Излаз:
Јава БордерЛаиоут: Без навођења региона
Метода адд() класе ЈФраме може да ради чак и када не наведемо регион. У том случају, само последња додата компонента је приказана у оквиру, а све претходно додате компоненте се одбацују. Најновија компонента покрива целу област. Следећи пример показује исто.
Назив документа: БордерЛаиоутВитхоутРегионЕкампле.јава
// import statements import java.awt.*; import javax.swing.*; public class BorderLayoutWithoutRegionExample { JFrame jframe; // constructor BorderLayoutWithoutRegionExample() { jframe = new JFrame(); JButton btn1 = new JButton('NORTH'); JButton btn2 = new JButton('SOUTH'); JButton btn3 = new JButton('EAST'); JButton btn4 = new JButton('WEST'); JButton btn5 = new JButton('CENTER'); // horizontal gap is 7, and the vertical gap is 7 // Since region is not specified, the gaps are of no use jframe.setLayout(new BorderLayout(7, 7)); // each button covers the whole area // however, the btn5 is the latest button // that is added to the frame; therefore, btn5 // is shown jframe.add(btn1); jframe.add(btn2); jframe.add(btn3); jframe.add(btn4); jframe.add(btn5); jframe.setSize(300,300); jframe.setVisible(true); } // main method public static void main(String argvs[]) { new BorderLayoutWithoutRegionExample(); } }
Излаз: