Основы оконной графики Java

Для поддержки пользовательских интерфейсов язык Java содержит библиотеки классов, позволяющие создавать и поддерживать окна, использовать элементы управления (кнопки, меню, полосы прокрутки и др.), применять инструменты для создания графических приложений. Графические инструменты и интерфейсы пользователя в языке Java реализованы с помощью двух библиотек:

· Пакет AWT (загружается java.awt) содержит набор классов, позволяющих выполнять графические операции и создавать элементы управления. Этот пакет поддерживается последующими версиями языка, однако считается весьма ограниченным и недостаточно эффективным.

· Пакет Swing (загружается javax.swing, имя javax обозначает, что пакет не является основным, а только расширением языка) содержит улучшенные и обновленные классы, по большей части аналогичные AWT. К именам этих классов добавляется J (JButton, JLabel
и т.д.). Пакет является частью библиотеки JFC (Java Foundation Classes), которая содержит большой набор компонентов JavaBeans, предназначенных для создания пользовательских интерфейсов.

Библиотека Swing, в отличие от AWT, более полно реализует парадигму объектно-ориентированного программирования. К преимуществам библиотеки Swing следует отнести повышение надежности, расширение возможностей пользовательского интерфейса, а также независимость от платформы. Кроме того, библиотеку Swing легче использовать, она визуально более привлекательна.

Работа с окнами и графикой в Java осуществляется в апплетах и графических приложениях. Апплеты – это небольшие программы, встраиваемые в Web-документ и использующие для своей визуализации средства Web-браузера. Графические приложения сами отвечают за свою прорисовку.

Апплеты используют окна, производные от класса Panel, графические приложения используют окна, производные от класса Frame, порожденного от класса Window.

Иерархия базовых классов AWT и Swing, применяемых для построения визуальных приложений, приведена на рисунке 11.1.

Суперкласс java.awt.Component является абстрактным классом, инкапсулирующим все атрибуты визуального компонента. Класс содержит большое число методов для создания компонентов управления и событий, с ними связанных.

clip_image002

Рис. 11.1. Иерархия классов основных графических компонентов AWT и Swing

Порожденный от него подкласс Container содержит методы типа add(), кото­рые позволяют вкладывать в него другие компоненты (объекты) и отвечает за размещение любых компонентов, которые он содержит. Класс Container порождает классы Panel и Window – фундаментальные классы при создании апплетов и фреймов.

Класс Panel используется апплетом, графический вывод которого рисуется на поверхности объекта Panel окна, не содержащего области заголовка, строки меню и обрамления. Основу для его отображения предоставляет браузер.

Графические приложения используют класс Window (окно верхнего уровня), который является основой для организации фрейма, но сам непосредственно для вывода компонент не используется. Для этого применяется его подкласс Frame. С помощью объекта типа Frame создается стандартное окно со строкой заголовка, меню, размерами.

Аналогично классы из пакета Swing используют для вывода графических изображений окна JPanel и JFrame. Еще один используемый для вывода класс Canvas, представляющий пустое окно, в котором можно рисовать, является наследником класса Component.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100