Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Класс Window служит базовым классом для всех окон, порождаемых из Java. Он также является интерфейсом к соответствующему окну операционной системы, которая обслуживает окна всех приложений.
Как правило, используется один из двух наследников Window – классы Frame и Dialog, которые будут рассмотрены следующими. Однако экземпляры Window не обладают ни рамкой, ни кнопками закрытия или минимизации окна, а потому зачастую используются как заставки (так называемые splash screen).
Конструктор Window требует в качестве аргумента ссылку на Window или Frame. Другими словами, базовые окна не являются самостоятельными, они привязываются к другим окнам.
31. Библиотека Swing.
Библиотека Swing
Современные программы нуждаются в графическом интерфейсе пользователя (GUI). Пользователи отвыкли работать через консоль: они управляют программой и вводят входные данные посредством так называемых элементов управления (в программировании их также называют визуальными компонентами), к которым относятся кнопки, текстовые поля, выпадающие списки и т.д.
Каждый из современных языков программирования предоставляет множество библиотек для работы со стандартным набором элементов управления. Напомним, что под библиотекой в программировании набор готовых классов и интерфейсов, предназначенных для решения определенного круга задач.
В Java есть три библиотеки визуальных компонентов для создания графического интерфейса пользователя. Самая ранняя из них называется AWT. Считается, что при ее проектировании был допущен ряд недочетов, вследствие которых с ней довольно сложно работать. Библиотека Swing разработана на базе AWT и заменяет большинство ее компонентов своими, спроектированными более тщательно и удобно. Третья, самая новая библиотека, называется SWT.
Каждая библиотека предоставляет набор классов для работы с кнопками, списками, окнами, меню и т.д., но эти классы спроектированы по-разному: они имеют различный набор методов с разными параметрами, поэтому «перевести» программу с одной библиотеки на другую (например, с целью увеличения быстродействия) не так-то просто. Это почти как перейти с одного языка программирования на другой: все языки умеют делать одно и то же, но у каждого из них свой синтаксис, своя программная структура и свои многочисленные хитрости.
По этой причине вместо того, чтобы делать обзор всех трех библиотек, мы постараемся получше разобраться в одной из них — библиотеке Swing. Полноценный графический интерфейс может быть разработан с ее помощью.
Все элементы управления из пакета AWT являются наследниками классов
Component и Container. При использовании пакета Swing компоненты на-
следуются от класса JComponent, производного от класса Container.
В качестве примеров можно привести текстовые метки Label, JLabel, ко-
торые создаются с помощью конструкторов, устанавливающих текст метки.
Возможность изменения текста метки предоставляет метод
setText(String txt). Получить значение текста метки можно методом
getText().
Кнопки Button и JButton, CheckBox и JCheckBox, RadioButton и
JRadioButton, JToggleButton используются для генерации и обработки событий.
Списки List и JList позволяют выбирать один или несколько элементов
из списка.
Полосы прокрутки ScrollBar и JScrollBar используются для облегче-
ния просмотра.
Однострочная область ввода TextField и JTextField и многострочная
область ввода – TextArea и JTextArea позволяют редактировать и вводить
текст.Суперклассом кнопок является класс AbstractButton, от которого насле-
дуются два наиболее используемых класса: JButton и JToggleButton. Пер-
вый предназначен для создания обычных кнопок, а второй - для создания «зали-
пающих» кнопок, радиокнопок (класс JRadioButton) и отмечаемых кнопок
(класс JCheckBox). Кроме указанных, от AbstractButton наследуется два
класса JCheckBoxMenuItem и JRadioButtonMenuItem, применяемых для
организации меню с радиокнопками и отмечаемыми кнопками.
Процесс создания кнопок достаточно прост: вызывается конструктор
JButton с меткой, которую нужно поместить на кнопке. Класс JButton биб-
лиотеки Swing для создания обычных кнопок предлагает несколько различных
конструкторов: JButton(), JButton(String s), JButton(Icon i),
JButton(String s, Icon i).
Если используется конструктор без параметров, то получится абсолютно пус-
тая кнопка. Задав текстовую строку, получим кнопку с надписью. Для создания кнопки с рисунком конструктору передается ссылка на класс пиктограммы. Класс
JButton содержит несколько десятков методов. JButton - это компонент, ко-
торый автоматически перерисовывается как часть обновления. Это означает, что
не нужно явно вызывать перерисовку кнопки, как и любого управляющего эле-
мента; он просто помещается на форму и сам автоматически заботится о своей
перерисовке. Чтобы поместить кнопку на форму, достаточно выполнить это в ме-
тоде init(). Каждый раз, когда кнопка нажимается, генерируется action-
событие. Оно посылается блокам прослушивания, зарегистрированным для прие-
ма события от этого компонента.
Дата публикования: 2015-02-03; Прочитано: 401 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!