Что такое swing в читах

AWT против Swing

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Разница между AWT и Swing

Обзор AWT : AWT используется для поддержки пользовательского интерфейса в приложении Java. Он обеспечивает высокоуровневую абстракцию для Java-программы, поскольку скрывает основные детали GUI. Поскольку AWT представляет собой API-интерфейс, основанный на операционной системе, который обеспечивает графический интерфейс пользователя для Java. Его компонент зависит от базового аналога (например, внешний вид этой ОС) для управления их функциональностью. Таким образом, эти компоненты часто называют «тяжелыми» компонентами.

AWT Особенности включает в себя:

Обзор Swing : Swing построен на AWT, он является частью Java Foundation Classes. Swing полностью основан на Java, поэтому его платформа независима. Он используется для создания более эффективного графического интерфейса, чем AWT.

Сравнение лицом к лицу между AWT и Swing (инфографика)

Ниже приведено 11 лучших сравнений между AWT и Swing: Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Ключевые отличия AWT от Swing:

Использование собственных компонентов делает AWT быстрым. Следовательно, улучшается его производительность. Кроме того, большинство веб-браузеров поддерживают AWT, для апплетов AWT не требуется плагин Java. Но AWT имеет меньший набор компонентов, поэтому пользователям приходится писать собственный код, чтобы получить свои собственные компоненты на основе AWT. Компоненты AWT не поддерживают такие функции, как строка заголовка и строки меню.

Свинг является продолжением AWT. Это не точная замена AWT. Следовательно, он имеет функции AWT с расширяемостью JAVA. Итак, все компоненты, присутствующие в AWT, также присутствуют в Swing. Но Swing не требует однорангового программирования, что делает его независимым от платформы и легким. Кроме того, Swing позволяет расширить спектр компонентов.

Большая часть веб-браузера не поддерживает свинг. Таким образом, для свинга нужен Java-плагин. Свинг медленнее по сравнению с AWT. Поскольку компоненты Swing обрабатывают свои собственные рисунки (а не используют нативный API, такой как DirectX в Windows), это может привести к графическим сбоям.

Сравнительная таблица между AWT и Swing:

AWTSWING
AWT расшифровывается как Abstract Window Toolkit.Swing является частью Java Foundation Classes (JFC).
AWT зависит от платформы. Его код находится в ОС системы, что делает невозможным независимость от платформы.Компоненты качелей сделаны в JAVA. Таким образом, делая его независимым от платформы.
Компоненты AWT имеют большой вес.Качели легкие.
AWT не следует MVC (Model View Controller).Swing основан на MVC.
Для компонентов AWT требуется java.awt.packageДля компонентов Swing требуется javax.swing.package.
AWT не имеет Jtable и Jtabbed панели.У Swing есть Jtable и Jtabbed.
AWT зависит от платформы, поэтому поддерживается не очень отличный внешний вид.Качели могут выглядеть по-разному.
AWT занимает больше места в памяти.Качели занимают меньше места в памяти.
AWT менее мощный, чем Swing.Свинг является продолжением AWT, поэтому многие недостатки устранены.
Внешний вид AWT зависит от платформы.Внешний вид Swing не зависит от базовой платформы и операционной системы.
Компоненты AWT зависят от собственного кода (пиров) для правильной работы. Вот почему эти компоненты являются «тяжелыми компонентами».У свинга такой зависимости нет. Следовательно, эти компоненты являются «легкими компонентами».

Вывод:

Рекомендуемые статьи

Источник

Руководство по Java Swing

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

Библиотека Swing построена на основе Java Abstract Widget Toolkit (AWT), более старого, зависимого от платформы инструментария GUI. Вы можете использовать компоненты библиотеки Java, такие как кнопка, текстовое поле и т. д. из библиотеки, и вам не нужно создавать компоненты с нуля.

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Все компоненты в Swing являются JComponent, который может быть добавлен к классам контейнера.

Что такое контейнерный класс?

Контейнерные классы – это классы, в которых могут быть другие компоненты. Поэтому для создания графического интерфейса нам нужен как минимум один контейнерный объект. Есть 3 типа контейнеров.

Пример: Чтобы научиться проектировать GUI в Java.

Шаг 1) Скопируйте следующий код в редактор

Шаг 2) Сохраните, скомпилируйте и запустите код.

Шаг 3) Теперь давайте добавим кнопку в наш фрейм. Скопируйте следующий код в редактор

Шаг 4) Выполнив код, вы получите большую кнопку.

Шаг 5) Как насчет добавления двух кнопок? Скопируйте следующий код в редактор.

Шаг 6) Сохраните, скомпилируйте и запустите программу.

Шаг 7) Неожиданный вывод =? Кнопки перекрываются.

Менеджер макетов используется для компоновки (или упорядочивания) компонентов JAVA GUI внутри контейнера. Существует много менеджеров макетов, но наиболее часто используемые из них-

Java BorderLayout – BorderLayout помещает компоненты в пять областей: верхнюю, нижнюю, левую, правую и центральную. Это менеджер макетов по умолчанию для каждого Java JFrame.

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Java FlowLayout. FlowLayout-это менеджер макетов по умолчанию для каждой JPanel. Он просто раскладывает компоненты в один ряд один за другим.

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Java GridBagLayout – это самый сложный из всех макетов. Он выравнивает компоненты, помещая их в сетку ячеек, позволяя компонентам охватывать более одной ячейки.

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Шаг 8) Как насчет создания фрейма чата, как показано ниже?

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Попробуйте написать код, прежде чем смотреть на программу ниже.

Источник

Swing. Десять полезных простых вещей

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

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

Если вы уже имели дело с библиотекой Swing, то можете сразу переходить ко второй главе.

Три шага для быстрого старта

Для быстрого старта и построения простых интерфейсов этих знаний будет вполне достаточно.

Теперь переходим к самому интересному.

Десять полезных простых вещей

1. Для того чтобы выставить look and feel как в системе (например соответствующий теме windows):

2. Меняем шрифт заданный по умолчанию:

3. Простой вариант модального диалога:

Если требуется более продвинутый диалог, есть вариант с возможностью добавления JComponent:

4. Для быстрой локализации диалогов:

5. Для фильтрации элементов в колонках таблицы JTable есть очень хорошая открытая библиотека Swing Bits с помощью которой можно сделать фильтр «как в Экселе».

6. Для того, чтобы дать пользователю возможность выбирать даты есть отличный компонент jcalendar

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

7. Для проигрывания звука упакованного в jar архив:

Теперь немного нетривиальных фишек:

8. Для того чтобы встроить в строку таблицы кнопку (с правильным рендером клика):

9. Для того, чтобы изменить компоненты swing из другого потока нужно использовать посредника:

10. И наконец фишка про SwingWorker. В один момент времени может выполняться всего десять SwingWorker потоков, связано это с тем, что пул потоков обработчика SwingWorker имеет максимальный размер десять, так что старайтесь чтобы задачи были не большие. Пример из жизни: в IE можно открыть 10 страниц с апплетами, а 11 будет уже ждать(«висеть») пока осводобится место в ThreadPoolExecutor для обработки данных полученных с сервера в другом потоке.

Источник

Как создать графический интерфейс с примерами Swing на Java

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

Объединение всех этих компонентов создает графический интерфейс пользователя.

Что такое Swing в Java?

Swing в Java – это легкий инструментарий с графическим интерфейсом, который имеет широкий спектр виджетов для создания оптимизированных оконных приложений. Это часть JFC (Java Foundation Classes). Он построен на основе AWT API и полностью написан на Java. Он не зависит от платформы в отличие от AWT и имеет легкие компоненты.

Создавать приложения становится проще, поскольку у нас уже есть компоненты GUI, такие как кнопка, флажок и т. д.

Контейнерный класс

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

Ниже приведены три типа контейнерных классов:

Разница между AWT и Swing

Иерархия

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Объяснение: Все компоненты в свинге, такие как JButton, JComboBox, JList, JLabel, унаследованы от класса JComponent, который можно добавить в классы контейнера.

Контейнеры – это окна, такие как рамка и диалоговые окна. Основные компоненты являются строительными блоками любого графического приложения. Такие методы, как setLayout, переопределяют макет по умолчанию в каждом контейнере. Контейнеры, такие как JFrame и JDialog, могут добавлять только компонент к себе. Ниже приведены несколько компонентов с примерами, чтобы понять, как мы можем их использовать.

JButton Class

Он используется для создания помеченной кнопки. Использование ActionListener приведет к некоторым действиям при нажатии кнопки. Он наследует класс AbstractButton и не зависит от платформы.

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

JTextField Class

Он наследует класс JTextComponent и используется для редактирования однострочного текста.

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

JScrollBar Class

Он используется для добавления полосы прокрутки, как горизонтальной, так и вертикальной.

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

JPanel Class

Он наследует класс JComponent и предоставляет пространство для приложения, которое может присоединить любой другой компонент.

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

JMenu Class

Он наследует класс JMenuItem и является компонентом выпадающего меню, которое отображается из строки меню.

Вывод:
Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Класс JList

Он наследует класс JComponent, объект класса JList представляет список текстовых элементов.

Вывод:
Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

JLabel Class

Используется для размещения текста в контейнере. Он также наследует класс JComponent.

Вывод:
Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

JComboBox Class

Он наследует класс JComponent и используется для отображения всплывающего меню выбора.

Вывод:
Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Для размещения компонентов внутри контейнера мы используем менеджер макета. Ниже приведены несколько менеджеров макетов:

Макет границы

Менеджер по умолчанию для каждого JFrame – BorderLayout. Он размещает компоненты в пяти местах: сверху, снизу, слева, справа и по центру.
Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Макет потока

FlowLayout просто кладет компоненты в ряд один за другим, это менеджер компоновки по умолчанию для каждого JPanel.
Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

GridBag Layout

GridBagLayout размещает компоненты в сетке, что позволяет компонентам охватывать более одной ячейки.
Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Пример: фрейм чата

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Это простой пример создания GUI с использованием Swing в Java.

Средняя оценка / 5. Количество голосов:

Или поделись статьей

Видим, что вы не нашли ответ на свой вопрос.

Источник

SWING — Краткое руководство

Swing API — это набор расширяемых компонентов графического интерфейса, облегчающий жизнь разработчика для создания приложений на основе JAVA Front End / GUI. Он построен на основе API-интерфейса AWT и выступает в качестве замены API-интерфейса AWT, поскольку имеет почти все элементы управления, соответствующие элементам управления AWT. Компонент Swing следует архитектуре Model-View-Controller для выполнения следующих критериев.

Одного API должно быть достаточно для поддержки множественного внешнего вида.

API должен быть ориентирован на модель, чтобы не требовалось, чтобы у API самого высокого уровня были данные.

API заключается в использовании модели Java Bean, чтобы инструменты Builder и IDE могли предоставлять разработчикам более качественные сервисы для использования.

Одного API должно быть достаточно для поддержки множественного внешнего вида.

API должен быть ориентирован на модель, чтобы не требовалось, чтобы у API самого высокого уровня были данные.

API заключается в использовании модели Java Bean, чтобы инструменты Builder и IDE могли предоставлять разработчикам более качественные сервисы для использования.

Архитектура MVC

Архитектура Swing API следует свободно основанной архитектуре MVC следующим образом.

Модель представляет данные компонента.

Представление представляет собой визуальное представление данных компонента.

Контроллер принимает входные данные от пользователя в представлении и отражает изменения в данных компонента.

Компонент Swing имеет модель в качестве отдельного элемента, в то время как части View и Controller объединены в элементах пользовательского интерфейса. Из-за этого Swing имеет подключаемую архитектуру внешнего вида.

Модель представляет данные компонента.

Представление представляет собой визуальное представление данных компонента.

Контроллер принимает входные данные от пользователя в представлении и отражает изменения в данных компонента.

Компонент Swing имеет модель в качестве отдельного элемента, в то время как части View и Controller объединены в элементах пользовательского интерфейса. Из-за этого Swing имеет подключаемую архитектуру внешнего вида.

Особенности Swing

Легкий вес — компоненты Swing не зависят от API собственной операционной системы, так как элементы управления Swing API отображаются в основном с использованием чистого кода JAVA, а не вызовов базовой операционной системы.

Богатые элементы управления — Swing предоставляет богатый набор расширенных элементов управления, таких как Tree, TabbedPane, слайдер, палитра цветов и элементы управления таблицами.

Широкие возможности настройки — элементы управления Swing можно легко настроить, поскольку внешний вид не зависит от внутреннего представления.

Сменный внешний вид — графический интерфейс на основе SWING Внешний вид приложения может изменяться во время выполнения в зависимости от доступных значений.

Легкий вес — компоненты Swing не зависят от API собственной операционной системы, так как элементы управления Swing API отображаются в основном с использованием чистого кода JAVA, а не вызовов базовой операционной системы.

Богатые элементы управления — Swing предоставляет богатый набор расширенных элементов управления, таких как Tree, TabbedPane, слайдер, палитра цветов и элементы управления таблицами.

Широкие возможности настройки — элементы управления Swing можно легко настроить, поскольку внешний вид не зависит от внутреннего представления.

Сменный внешний вид — графический интерфейс на основе SWING Внешний вид приложения может изменяться во время выполнения в зависимости от доступных значений.

SWING — Настройка среды

В этом разделе рассказывается, как загрузить и настроить Java на вашем компьютере. Пожалуйста, используйте следующие шаги для настройки среды.

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

Настройка пути для Windows 2000 / XP

Предполагая, что вы установили Java в каталог c: \ Program Files \ java \ jdk

Шаг 1 — Щелкните правой кнопкой мыши «Мой компьютер» и выберите «Свойства».

Шаг 2 — Нажмите кнопку «Переменные среды» на вкладке «Дополнительно».

Настройка пути для Windows 95/98 / ME

Предполагая, что вы установили Java в каталог c: \ Program Files \ java \ jdk

Настройка пути для Linux, UNIX, Solaris, FreeBSD

Переменная среды PATH должна указывать на то, где установлены двоичные файлы Java. Обратитесь к документации Shell, если у вас возникли проблемы с этим.

Популярные редакторы Java

Для написания ваших программ на Java вам понадобится текстовый редактор. На рынке доступны еще более сложные IDE. Но сейчас вы можете рассмотреть один из следующих —

Блокнот — на компьютере с Windows вы можете использовать любой простой текстовый редактор, например Блокнот (рекомендуется для этого урока), TextPad.

Блокнот — на компьютере с Windows вы можете использовать любой простой текстовый редактор, например Блокнот (рекомендуется для этого урока), TextPad.

SWING — Управление

Каждый пользовательский интерфейс рассматривает следующие три основных аспекта:

Элементы пользовательского интерфейса — это основные визуальные элементы, с которыми пользователь в конечном итоге видит и взаимодействует. GWT предоставляет огромный список широко используемых и распространенных элементов от базовых до сложных, которые мы рассмотрим в этом руководстве.

Макеты — они определяют, как элементы пользовательского интерфейса должны быть организованы на экране, и обеспечивают окончательный внешний вид графического интерфейса пользователя. Эта часть будет рассмотрена в главе «Макет».

Поведение — это события, которые происходят, когда пользователь взаимодействует с элементами пользовательского интерфейса. Эта часть будет рассмотрена в главе «Обработка событий».

Элементы пользовательского интерфейса — это основные визуальные элементы, с которыми пользователь в конечном итоге видит и взаимодействует. GWT предоставляет огромный список широко используемых и распространенных элементов от базовых до сложных, которые мы рассмотрим в этом руководстве.

Макеты — они определяют, как элементы пользовательского интерфейса должны быть организованы на экране, и обеспечивают окончательный внешний вид графического интерфейса пользователя. Эта часть будет рассмотрена в главе «Макет».

Поведение — это события, которые происходят, когда пользователь взаимодействует с элементами пользовательского интерфейса. Эта часть будет рассмотрена в главе «Обработка событий».

Что такое swing в читах. Смотреть фото Что такое swing в читах. Смотреть картинку Что такое swing в читах. Картинка про Что такое swing в читах. Фото Что такое swing в читах

Каждый элемент управления SWING наследует свойства из следующего класса компонентов hiearchy.

S.No.Класс и описание
1Составная часть

Компонент — это абстрактный базовый класс для элементов управления SWING без пользовательского интерфейса. Компонент представляет объект с графическим представлением

Контейнер — это компонент, который может содержать другие компоненты SWING.

JComponent — это базовый класс для всех компонентов пользовательского интерфейса SWING. Чтобы использовать компонент SWING, который наследуется от JComponent, этот компонент должен находиться в иерархии содержимого, корнем которой является контейнер SWING верхнего уровня.

Компонент — это абстрактный базовый класс для элементов управления SWING без пользовательского интерфейса. Компонент представляет объект с графическим представлением

Контейнер — это компонент, который может содержать другие компоненты SWING.

JComponent — это базовый класс для всех компонентов пользовательского интерфейса SWING. Чтобы использовать компонент SWING, который наследуется от JComponent, этот компонент должен находиться в иерархии содержимого, корнем которой является контейнер SWING верхнего уровня.

Элементы пользовательского интерфейса SWING

Ниже приведен список наиболее часто используемых элементов управления при разработке графического интерфейса с использованием SWING.

S.No.Класс и описание
1JLabel

Объект JLabel — это компонент для размещения текста в контейнере.

Этот класс создает помеченную кнопку.

JColorChooser предоставляет панель управления, разработанную, чтобы позволить пользователю манипулировать и выбирать цвет.

JCheckBox — это графический компонент, который может находиться во включенном (true) или выключенном (false) состоянии.

Класс JRadioButton представляет собой графический компонент, который может находиться в состоянии «включено» (true) или « выключено» (false). в группе.

Компонент JList предоставляет пользователю список прокручиваемых текстовых элементов.

Компонент JComboBox предоставляет пользователю доступ к меню выбора.

Объект JTextField — это текстовый компонент, который позволяет редактировать одну строку текста.

Объект JPasswordField — это текстовый компонент, предназначенный для ввода пароля.

Объект JTextArea — это текстовый компонент, который позволяет редактировать несколько строк текста.

Элемент управления ImageIcon — это реализация интерфейса Icon, который рисует значки из изображений

Элемент управления «Полоса прокрутки» представляет компонент полосы прокрутки, чтобы пользователь мог выбирать из диапазона значений.

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

Элемент управления JFileChooser представляет диалоговое окно, из которого пользователь может выбрать файл.

По мере продвижения задачи к завершению на индикаторе выполнения отображается процент выполнения задачи.

JSlider позволяет пользователю графически выбирать значение, перемещая ручку в ограниченном интервале.

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

Объект JLabel — это компонент для размещения текста в контейнере.

Этот класс создает помеченную кнопку.

JColorChooser предоставляет панель управления, разработанную, чтобы позволить пользователю манипулировать и выбирать цвет.

JCheckBox — это графический компонент, который может находиться во включенном (true) или выключенном (false) состоянии.

Класс JRadioButton представляет собой графический компонент, который может находиться в состоянии «включено» (true) или « выключено» (false). в группе.

Компонент JList предоставляет пользователю список прокручиваемых текстовых элементов.

Компонент JComboBox предоставляет пользователю доступ к меню выбора.

Объект JTextField — это текстовый компонент, который позволяет редактировать одну строку текста.

Объект JPasswordField — это текстовый компонент, предназначенный для ввода пароля.

Объект JTextArea — это текстовый компонент, который позволяет редактировать несколько строк текста.

Элемент управления ImageIcon — это реализация интерфейса Icon, который рисует значки из изображений

Элемент управления «Полоса прокрутки» представляет компонент полосы прокрутки, чтобы пользователь мог выбирать из диапазона значений.

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

Элемент управления JFileChooser представляет диалоговое окно, из которого пользователь может выбрать файл.

По мере продвижения задачи к завершению на индикаторе выполнения отображается процент выполнения задачи.

JSlider позволяет пользователю графически выбирать значение, перемещая ручку в ограниченном интервале.

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

SWING — обработка событий

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

Что такое событие?

Типы событий

События могут быть широко разделены на две категории —

События переднего плана — эти события требуют непосредственного взаимодействия с пользователем. Они создаются как последствия взаимодействия человека с графическими компонентами в графическом интерфейсе пользователя. Например, нажатие кнопки, перемещение мыши, ввод символа с клавиатуры, выбор элемента из списка, прокрутка страницы и т. Д.

Фоновые события — эти события требуют взаимодействия конечного пользователя. Прерывания операционной системы, аппаратный или программный сбой, истечение таймера и завершение работы — вот некоторые примеры фоновых событий.

События переднего плана — эти события требуют непосредственного взаимодействия с пользователем. Они создаются как последствия взаимодействия человека с графическими компонентами в графическом интерфейсе пользователя. Например, нажатие кнопки, перемещение мыши, ввод символа с клавиатуры, выбор элемента из списка, прокрутка страницы и т. Д.

Фоновые события — эти события требуют взаимодействия конечного пользователя. Прерывания операционной системы, аппаратный или программный сбой, истечение таймера и завершение работы — вот некоторые примеры фоновых событий.

Что такое обработка событий?

Обработка событий — это механизм, который контролирует событие и решает, что должно произойти в случае возникновения события. Этот механизм имеет код, который известен как обработчик событий, который выполняется, когда происходит событие.

Java использует модель событий делегирования для обработки событий. Эта модель определяет стандартный механизм для генерации и обработки событий.

Модель делегирования событий включает в себя следующих ключевых участников.

Источник — Источник — это объект, на котором происходит событие. Источник отвечает за предоставление информации о произошедшем событии своему обработчику. Java предоставляет нам классы для исходного объекта.

Слушатель — Он также известен как обработчик событий. Слушатель отвечает за генерацию ответа на событие. С точки зрения реализации Java слушатель также является объектом. Слушатель ждет, пока не получит событие. Как только событие получено, слушатель обрабатывает событие и затем возвращается.

Источник — Источник — это объект, на котором происходит событие. Источник отвечает за предоставление информации о произошедшем событии своему обработчику. Java предоставляет нам классы для исходного объекта.

Слушатель — Он также известен как обработчик событий. Слушатель отвечает за генерацию ответа на событие. С точки зрения реализации Java слушатель также является объектом. Слушатель ждет, пока не получит событие. Как только событие получено, слушатель обрабатывает событие и затем возвращается.

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

В этой модели слушатель должен быть зарегистрирован в исходном объекте, чтобы слушатель мог получить уведомление о событии. Это эффективный способ обработки события, поскольку уведомления о событиях отправляются только тем слушателям, которые хотят их получить.

Шаги, вовлеченные в обработку событий

Шаг 1 — Пользователь нажимает кнопку, и событие генерируется.

Шаг 2 — Объект соответствующего класса событий создается автоматически, и информация об источнике и событии заполняется одним и тем же объектом.

Шаг 3 — Объект события перенаправляется в метод зарегистрированного класса слушателя.

Шаг 4 — Метод выполняется и возвращается.

Что нужно помнить о слушателе

Чтобы спроектировать класс слушателя, вы должны разработать несколько интерфейсов слушателя. Эти интерфейсы Listener прогнозируют некоторые публичные абстрактные методы обратного вызова, которые должны быть реализованы классом listener.

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

Чтобы спроектировать класс слушателя, вы должны разработать несколько интерфейсов слушателя. Эти интерфейсы Listener прогнозируют некоторые публичные абстрактные методы обратного вызова, которые должны быть реализованы классом listener.

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

Методы обратного вызова

Это методы, предоставляемые провайдером API и определяемые программистом приложения и вызываемые разработчиком приложения. Здесь методы обратного вызова представляют метод события. В ответ на событие java jre запустит метод обратного вызова. Все такие методы обратного вызова предоставляются в интерфейсах слушателей.

Если компонент хочет, чтобы какой-либо слушатель прослушивал его события, источник должен зарегистрировать себя для слушателя.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *