Килограмм килобайтов

  Все выпуски  

Килограмм килобайтов


Килограмм килобайтов

Сайт рассылки: Smarty IT Выпуск №79, 2010-07-23
Блог рассылки в Живом Журнале
"Следуйте за моим твитом..."
День рождения
Статьи
 
СУБД Oracle
Операционные системы
Программирование
WEB-программирование
PHP
Zend Framework
Java
Тестирование

Здравствуйте, уважаемые подписчики.

Предлагаю вашему вниманию мой перевод статьи "Understanding Layouts in SWT". В статье очень подробно рассказывается про механизм Layout'ов в Java библиотеке SWT. На примерах поясняются различные аспекты поведения и особенности использования стандартных Layout'ов, кроме того даются советы как написать свои классы.

Статья очень большая с кучей примеров и рисунков, здесь публикую только отрывок.

Предисловие

Разрабатывая приложенение на SWT, Вы можете столкнуться с необходимостью использовать layout'ы, чтобы придать приложению особый внешний вид. Layout'ы управляют расположением и размером дочерних компонентов контейнера Composite. Классы layout'ов являются подклассами абстрактного класса Layout. В этой статье рассказывается как работать со стандартными layout'ами, и как как написать свой собственный класс.

Обзор

Разрабатывая приложенение на Standard Widget Toolkit (SWT), Вы можете столкнуться с необходимостью использовать layout'ы, чтобы придать приложению особый внешний вид. Layout'ы управляют расположением и размером дочерних компонентов контейнера Composite. Классы layout'ов являются подклассами абстрактного класса Layout. SWT предлагает несколько стандартных классов layout'ов, если их не достаточно, пользователь может разработать свой.

В SWT позиция и размер компонентов не рассчитывается автоматически. Приложения при инициализации могут задать размеры и расположение дочерних элементов Composite, кроме того приложение может изменять эти значения, перехватывая событие изменения размера.
Другой способ управлять расположением и размером компонентов заключается в использовании специализированных классов. Если дочерний компонент не получил размер, то его размеры будут равны нулю и он не будет отображаться.

Следующая картинка иллюстрирует несколько наиболее важных терминов, которые используются при обсуждении layout'ов. Контейнер Composite (в данном случае это TabFolder) имеет location (расположение), clientArea (клиентскую область) и trim (кромка). Размер контейнера Composite складывается из размеров клиентской области и размера кромки. Этот Composite содержит два дочерних компонента, расположенных рядом. Класс Layout управляет размером и позицией этих дочерних компонентов. Layout позволяет задать spacing (промежуток) между компонентами, и margin (зазор) между компонентами и границей Layout. Размер Layout совпадает с размером клиентской обрасти Composite'а.

Читать полностью

Ведущий рассылки: Петрелевич Сергей


В избранное