Page 143 - 4836
P. 143
урахуванням переваг всіх елементів, розміщених у цьому
вікні.
Оцініть роботу цього методу, замінивши в кожному з
вищенаведених прикладів команду
setSize (250, 100);
на команду
pack ();
Зауважте, що коли панель не має методу розміщення,
ця команда не працює (оскільки панель не має алгоритму для
обчислення свого переважного розміру).
Рамки
Коли панелі служать не просто для розміщення
елементів відповідно до алгоритму деякого менеджера, а для
візуального відділення їх один від одного, вони оформляються
за допомогою рамок.
Рамка панелі встановлюється методом setBorder
(Border border). Параметром методу виступає рамка - об'єкт
класу Border. Це абстрактний клас, тому для створення рамки
використовуються його спадкоємці:
EmptyBorder - порожня рамка, дозволяє створити
відступи навколо панелі. Розміри відступів задаються в
конструкторі чотирма цілими числами.
TitledBorder - рамка з заголовком. Найпростіший
конструктор має один параметр типу String (текст заголовка ) .
Заголовок може розміщуватися вздовж будь-якої сторони
рамки , мати різні накреслення.
EtchedBorder - рамка з тисненням. Може бути
увігнутою або опуклою.
BevelBorder - об'ємна рамка (опукла або увігнута).
Можна налаштувати кольору, необхідні для отримання
об'ємних ефектів.
SoftBevelBorder - те ж саме, що BevelBorder, але
дозволяє додатково скруглити кути.
141