Java для чайников. Урок 38. Менеджеры расположения компонентов |
Автор megabax | ||||||||
07.01.2020 г. | ||||||||
Java для чайников. Урок 38. Менеджеры расположения компонентовНа прошлом уроке мы с вами познакомились с классом JFrame. Пока мы еще не обладаем достаточными знаниями, чтобы написать программу калькулятор, которую начали на уроке 35. Поэтому изучим еще одну важную возможность Java, как менеджеры расположения компонентов. Сначала рассмотрим BorderLayout. Он позволяет расположить компоненты в центре, снизу сверху и по бокам (слева и справа, примерно вот так): Вот как выглядит код:
Что характерно, если мы добавим к какой-нибудь панели, например, к левой, новый элемент:
То она перекроек старый: Точно также, если мы попробуем поместить еще один элемент в центре. Другой контейнер - это FlowLayout. Он обеспечивает последовательное размещение компонентов с выравниванием по центру. Рассмотрим пример:
И вот как будет выглядеть результат работы данной программы: Теперь попробуем сетку. (GridLayout):
И программа будет выглядеть вот так: Если сделать больше элементов:
То они продолжат ложиться на ячейки таблицы: Теперь рассмотрим еще один интересный лайоут - GridBagLayout. В отличии от GridLayout он позволяет определить разную высоту и ширину для колонок и строк таблицы. По существу, GridBagLayout помещает компоненты в ячейки, и затем использует привилегированные размеры компонентов, чтобы определить, насколько большой ячейка должна быть. Рассмотрим пример:
Запустив эту программу, мы увидим: Рассмотрим, как мы управляем размером и положением элементов. Допустим, большая кнопка:
Сделаем значение ipady равным 10: Можем заменить координаты, например, gridx поставить 1: Можно менять и ширину объекта. Вернем координату на место и поставим gridwidth не 3, а 2: Как видим, для написания калькулятора, который мы начали писать на уроке Java для чайников. Урок 36. Пишем калькулятор. Начало. В будущих уроках мы обязательно продолжим писать и калькулятор, и изучать другие лайоуты. А на сегодня все, дно новых встреч. (С) Шуравин Александр
|
||||||||
Последнее обновление ( 07.01.2020 г. ) |
« След. | Пред. » |
---|