Page 131 - 4836
P. 131

кожну  з  цих  областей  можна  додати  рівно  по  одному
                            компоненту, причому компонент буде займати всю відведену
                            для  нього  область.  Компоненти,  додані  в  верхню  і  нижню
                            області, будуть розтягнуті по ширині, додані в праву і ліву -
                            по  висоті,  а  компонент,  доданий  в  центр,  буде  розтягнутий
                            так, щоб повністю заповнити простір панелі.
                                   При  додаванні  елемента  на  панель  з  менеджером
                            розміщення  BorderLayout,  необхідно  додатково  вказувати  в
                            методі  add(  ),  яка  з  областей  мається  на  увазі.  Для  цього
                            служать  рядки  з  назвами  сторін  світу:  "North"(нос),
                            "South"(саус), "East"(іст), "West"  і  " Center". Але замість них
                            рекомендовано використовувати константи, визначені в класі
                            BorderLayout:  NORTH,  SOUTH,  EAST,  WEST  і  CENTER
                            (оскільки  в  рядку  можна  допустити  помилку  і  не  помітити
                            цього,  а  при  спробі  написати  неправильно  ім'я  константи
                            компілятор видасть попередження). Якщо ж використовувати
                            метод  add() як  звичайно,  з одним  параметром,  елемент  буде
                            додано в центр.
                                   Панель вмісту має саме таке розташування, саме тому
                            кнопка  і  займала  все  вікно  цілком  (вона  була  додана  в
                            центральну область). Щоб поспостерігати ефект BorderLayout,
                            додамо кнопки в усі п'ять областей :
                                   package Swing;
                                   import java.awt.BorderLayout;
                                   import java.awt.FlowLayout;
                                   import javax.swing.*;
                                   public class SimpleWindow extends JFrame {
                                          SimpleWindow () {
                                          super (" Пробне вікно");
                                          setDefaultCloseOperation (EXIT_ON_CLOSE);
                                          getContentPane().add(new
                                          JButton("Кнопка"),BorderLayout.NORTH);
                                          getContentPane().add(new
                                          JButton("+"),BorderLayout.EAST );




                                                           129
   126   127   128   129   130   131   132   133   134   135   136