Класс BasicComboBoxUI
- Прямые известные подклассы:
-
MetalComboBoxUI,SynthComboBoxUI
public class BasicComboBoxUI extends ComboBoxUI
Комбо-бокс — это составной компонент, то есть он представляет собой агрегат из многих более простых компонентов. Этот класс создаёт и управляет слушателями комбо-бокса и модели комбо-бокса. Эти слушатели обновляют пользовательский интерфейс в ответ на изменения свойств и состояния комбо-бокса.
Все обработка событий осуществляется классами-слушателями, созданными методами createxxxListener() и внутренними классами. Вы можете изменить поведение этого класса, переопределив методы createxxxListener() и предоставив собственных слушателей событий или создав подклассы от предоставляемых в этом классе.
Для добавления специфических действий, переопределите installKeyboardActions для добавления действий в ответ на привязки клавиш. См. статью Как использовать привязки клавиш
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
class |
BasicComboBoxUI.ComboBoxLayoutManager |
Этот менеджер компоновки обрабатывает «стандартную» компоновку комбо-боксов. |
class |
BasicComboBoxUI.FocusHandler |
Этот слушатель скрывает всплывающее меню при потере фокуса. |
class |
BasicComboBoxUI.ItemHandler |
Этот слушатель отслеживает изменения выбора в комбо-боксе. |
class |
BasicComboBoxUI.KeyHandler |
Этот слушатель проверяет, является ли событие нажатия клавиши событием навигации. |
class |
BasicComboBoxUI.ListDataHandler |
Этот слушатель отслеживает изменения в ComboBoxModel. |
class |
BasicComboBoxUI.PropertyChangeHandler |
Этот слушатель отслеживает изменения привязанных свойств в комбо-боксе. |
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected JButton |
arrowButton |
Кнопка стрелки, вызывающая всплывающее меню. |
protected Dimension |
cachedMinimumSize |
Кэшированный минимальный предпочтительный размер. |
protected JComboBox<Object> |
comboBox |
Экземпляр JComboBox. |
protected CellRendererPane |
currentValuePane |
Используется для отрисовки текущего выбранного элемента в комбо-боксе. |
protected Component |
editor |
Компонент, который @{code ComboBoxEditor} использует для редактирования. |
protected FocusListener |
focusListener |
Это защищенное поле, специфичное для реализации. |
protected boolean |
hasFocus |
Это защищенное поле, специфичное для реализации. |
protected boolean |
isMinimumSizeDirty |
Флаг для перерасчёта минимального предпочтительного размера. |
protected ItemListener |
itemListener |
Это защищенное поле, специфичное для реализации. |
protected KeyListener |
keyListener |
Это защищенное поле, специфичное для реализации. |
protected JList<Object> |
listBox |
Этот список предназначен для отрисовки текущего элемента в комбо-боксе. |
protected ListDataListener |
listDataListener |
Это защищенное поле, специфичное для реализации. |
protected Insets |
padding |
Если указано, эти отступы действуют как отступ вокруг визуализатора ячейки при компоновке и отрисовке «выбранного» элемента в комбо-боксе. |
protected ComboPopup |
popup |
Реализация ComboPopup, которая используется для отображения всплывающего меню. |
protected KeyListener |
popupKeyListener |
KeyListener прослушивает события. |
protected MouseListener |
popupMouseListener |
MouseListener прослушивает события. |
protected MouseMotionListener |
popupMouseMotionListener |
MouseMotionListener прослушивает события. |
protected PropertyChangeListener |
propertyChangeListener |
Это защищенное поле, специфичное для реализации. |
protected boolean |
squareButton |
Указывает, должна ли кнопка комбо-бокса быть квадратной. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
BasicComboBoxUI() |
Создаёт BasicComboBoxUI. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addEditor() |
Этот общедоступный метод специфичен для реализации и должен быть приватным. |
void |
configureArrowButton() |
Этот общедоступный метод специфичен для реализации и должен быть приватным. |
protected void |
configureEditor() |
Этот защищённый метод специфичен для реализации и должен быть приватным. |
protected JButton |
createArrowButton() |
Создаёт кнопку, которая будет использоваться в качестве элемента управления для отображения или скрытия всплывающей части раскрывающегося списка. |
protected ComboBoxEditor |
createEditor() |
Создаёт стандартный редактор, который будет использоваться в редактируемых раскрывающихся списках. |
protected FocusListener |
createFocusListener() |
Создаёт FocusListener, который будет добавлен в раскрывающийся список. |
protected ItemListener |
createItemListener() |
Создаёт ItemListener, который будет добавлен в раскрывающийся список. |
protected KeyListener |
createKeyListener() |
Создаёт KeyListener, который будет добавлен в раскрывающийся список. |
protected LayoutManager |
createLayoutManager() |
Создаёт менеджер компоновки для управления компонентами, составляющими раскрывающийся список. |
protected ListDataListener |
createListDataListener() |
Создаёт слушателя данных списка, который будет добавлен к ComboBoxModel. |
protected ComboPopup |
createPopup() |
Создаёт всплывающую часть раскрывающегося списка. |
protected PropertyChangeListener |
createPropertyChangeListener() |
Создаёт PropertyChangeListener, который будет добавлен в раскрывающийся список. |
protected ListCellRenderer<Object> |
createRenderer() |
Создаёт стандартный рендерер, который будет использоваться в нередактируемом раскрывающемся списке. |
static ComponentUI |
createUI |
Создаёт новый экземпляр BasicComboBoxUI. |
int |
getBaseline |
Возвращает базовую линию. |
Component.BaselineResizeBehavior |
getBaselineResizeBehavior |
Возвращает перечисление, указывающее, как базовая линия компонента изменяется при изменении размера. |
protected Dimension |
getDefaultSize() |
Возвращает стандартный размер пустой области отображения раскрывающегося списка с использованием текущего рендерера и шрифта. |
protected Dimension |
getDisplaySize() |
Возвращает рассчитанный размер области отображения. |
protected Insets |
getInsets() |
Получает отступы из JComboBox. |
Dimension |
getMinimumSize |
Минимальный размер — это размер области отображения плюс отступы плюс кнопка. |
protected Dimension |
getSizeForComponent |
Возвращает размер компонента, если он используется в качестве рендерера ячейки. |
protected void |
installComponents() |
Создаёт и инициализирует компоненты, составляющие составной раскрывающийся список. |
protected void |
installDefaults() |
Устанавливает стандартные цвета, стандартный шрифт, стандартный рендерер и стандартный редактор в JComboBox. |
protected void |
installKeyboardActions() |
Добавляет действия клавиатуры в JComboBox. |
protected void |
installListeners() |
Создаёт и устанавливает слушатели для раскрывающегося списка и его модели. |
boolean |
isFocusTraversable |
Определяет, является ли JComboBox проходным для фокуса. |
protected boolean |
isNavigationKey |
Возвращает, соответствует ли предоставленный код клавиши клавише, используемой для навигации. |
boolean |
isPopupVisible |
Указывает, отображается ли всплывающее окно. |
void |
paintCurrentValue |
Отображает текущий выбранный элемент. |
void |
paintCurrentValueBackground |
Отображает фон текущего выбранного элемента. |
protected Rectangle |
rectangleForCurrentValue() |
Возвращает область, выделенную для рисования текущего выбранного элемента. |
void |
removeEditor() |
Этот общедоступный метод специфичен для реализации и должен быть приватным. |
protected void |
selectNextPossibleValue() |
Выбирает следующий элемент в списке. |
protected void |
selectPreviousPossibleValue() |
Выбирает предыдущий элемент в списке. |
void |
setPopupVisible |
Скрывает всплывающее окно. |
protected void |
toggleOpenClose() |
Скрывает всплывающее окно, если оно отображается, и отображает всплывающее окно, если оно скрыто. |
void |
unconfigureArrowButton() |
Этот общедоступный метод специфичен для реализации и должен быть приватным. |
protected void |
unconfigureEditor() |
Этот защищённый метод специфичен для реализации и должен быть приватным. |
protected void |
uninstallComponents() |
Компоненты, составляющие раскрывающийся список, не зарегистрированы и не инициализированы. |
protected void |
uninstallDefaults() |
Удаляет стандартные цвета, стандартный шрифт, стандартный рендерер и стандартный редактор из раскрывающегося списка. |
protected void |
uninstallKeyboardActions() |
Удаляет InputMap и ActionMap фокуса. |
protected void |
uninstallListeners() |
Удаляет установленные слушатели из раскрывающегося списка и его модели. |
Методы, объявленные в классе javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getMaximumSize, getPreferredSize, installUI, paint, uninstallUI, update
Подробное описание полей
comboBox
protected JComboBox<Object> comboBox
JComboBox.hasFocus
protected boolean hasFocus
listBox
protected JList<Object> listBox
currentValuePane
protected CellRendererPane currentValuePane
popup
protected ComboPopup popup
ComboPopup, используемая для отображения всплывающего меню.editor
protected Component editor
arrowButton
protected JButton arrowButton
keyListener
protected KeyListener keyListener
- См. также:
focusListener
protected FocusListener focusListener
- См. также:
propertyChangeListener
protected PropertyChangeListener propertyChangeListener
- См. также:
itemListener
protected ItemListener itemListener
- См. также:
popupMouseListener
protected MouseListener popupMouseListener
MouseListener событий.popupMouseMotionListener
protected MouseMotionListener popupMouseMotionListener
MouseMotionListener событий.popupKeyListener
protected KeyListener popupKeyListener
KeyListener событий.listDataListener
protected ListDataListener listDataListener
- См. также:
isMinimumSizeDirty
protected boolean isMinimumSizeDirty
cachedMinimumSize
protected Dimension cachedMinimumSize
squareButton
protected boolean squareButton
- С:
- 1.7
padding
protected Insets padding
- С:
- 1.7
Подробное описание конструкторов
BasicComboBoxUI
public BasicComboBoxUI()
BasicComboBoxUI.Подробное описание методов
createUI
public static ComponentUI createUI(JComponent c)
BasicComboBoxUI.- Параметры:
-
c- компонент - Возвращает:
- новый экземпляр
BasicComboBoxUI
installDefaults
protected void installDefaults()
installListeners
protected void installListeners()
uninstallDefaults
protected void uninstallDefaults()
uninstallListeners
protected void uninstallListeners()
installListeners
createPopup
protected ComboPopup createPopup()
- Возвращает:
- экземпляр
ComboPopup - См. также:
createKeyListener
protected KeyListener createKeyListener()
KeyListener, который будет добавлен в раскрывающийся список. Если этот метод возвращает null, он не будет добавлен в раскрывающийся список.- Возвращает:
- экземпляр
KeyListenerили null
createFocusListener
protected FocusListener createFocusListener()
FocusListener, который будет добавлен в раскрывающийся список. Если этот метод возвращает null, он не будет добавлен в раскрывающийся список.- Возвращает:
- экземпляр
FocusListenerили null
createListDataListener
protected ListDataListener createListDataListener()
ComboBoxModel. Если этот метод возвращает null, он не будет добавлен в модель раскрывающегося списка.- Возвращает:
- экземпляр
ListDataListenerили null
createItemListener
protected ItemListener createItemListener()
ItemListener, который будет добавлен в раскрывающийся список. Если этот метод возвращает null, он не будет добавлен в раскрывающийся список. Подклассы могут переопределить этот метод, чтобы вернуть экземпляры своих собственных обработчиков ItemEvent.
- Возвращает:
- экземпляр
ItemListenerили null
createPropertyChangeListener
protected PropertyChangeListener createPropertyChangeListener()
PropertyChangeListener, который будет добавлен в раскрывающийся список. Если этот метод возвращает null, он не будет добавлен в раскрывающийся список.- Возвращает:
- экземпляр
PropertyChangeListenerили null
createLayoutManager
protected LayoutManager createLayoutManager()
- Возвращает:
- экземпляр менеджера компоновки
createRenderer
protected ListCellRenderer<Object> createRenderer()
setRenderer.- Возвращает:
ListCellRenderдля раскрывающегося списка- См. также:
createEditor
protected ComboBoxEditor createEditor()
setEditor.- Возвращает:
ComboBoxEditorдля раскрывающегося списка- См. также:
installComponents
protected void installComponents()
uninstallComponents
protected void uninstallComponents()
addEditor
public void addEditor()
ComboBoxEditor
removeEditor
public void removeEditor()
- См. также:
configureEditor
protected void configureEditor()
- См. также:
unconfigureEditor
protected void unconfigureEditor()
- См. также:
configureArrowButton
public void configureArrowButton()
- См. также:
unconfigureArrowButton
public void unconfigureArrowButton()
- См. также:
createArrowButton
protected JButton createArrowButton()
- Возвращает:
- кнопку, представляющую элемент управления всплывающим списком
isPopupVisible
public boolean isPopupVisible(JComboBox<?> c)
- Определено в:
-
isPopupVisibleв классеComboBoxUI - Параметры:
-
c-JComboBox - Возвращает:
- true, если всплывающее меню
JComboBoxотображается
setPopupVisible
public void setPopupVisible(JComboBox<?> c, boolean v)
- Определено в:
-
setPopupVisibleв классеComboBoxUI - Параметры:
-
c-JComboBox -
v-booleanопределяющее видимость всплывающего меню
isFocusTraversable
public boolean isFocusTraversable(JComboBox<?> c)
- Определено в:
-
isFocusTraversableв классеComboBoxUI - Параметры:
-
c-JComboBox - Возвращает:
- true, если указанный
JComboBoxдоступен для перехода
getMinimumSize
public Dimension getMinimumSize(JComponent c)
- Переопределяет:
-
getMinimumSizeв классеComponentUI - Параметры:
-
c- компонент, для которого запрашивается минимальный размер; этот аргумент часто игнорируется, но может быть использован, если объект пользовательского интерфейса является бессостоятельным и используется несколькими компонентами - Возвращает:
- объект
Dimensionилиnull - См. также:
getBaseline
public int getBaseline(JComponent c, int width, int height)
- Переопределяет:
-
getBaselineв классеComponentUI - Параметры:
-
c-JComponentбазовая линия запрашивается для -
width- ширина для получения базовой линии -
height- высота для получения базовой линии - Возвращает:
- базовая линия или значение < 0, указывающее, что нет разумной базовой линии
- Исключения:
-
NullPointerException- еслиcnull -
IllegalArgumentException- если ширина или высота < 0 - См. также:
getBaselineResizeBehavior
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
- Переопределяет:
-
getBaselineResizeBehaviorв классеComponentUI - Параметры:
-
c-JComponentполучить поведение изменения базовой линии - Возвращает:
- перечисление, указывающее, как изменяется базовая линия при изменении размера компонента
- Исключения:
-
NullPointerException- еслиcnull - См. также:
selectNextPossibleValue
protected void selectNextPossibleValue()
selectPreviousPossibleValue
protected void selectPreviousPossibleValue()
toggleOpenClose
protected void toggleOpenClose()
rectangleForCurrentValue
protected Rectangle rectangleForCurrentValue()
- Возвращает:
- область, зарезервированную для рисования текущего выбранного элемента
getInsets
protected Insets getInsets()
- Возвращает:
- отступы
paintCurrentValue
public void paintCurrentValue(Graphics g, Rectangle bounds, boolean hasFocus)
- Параметры:
-
g- экземплярGraphics -
bounds- прямоугольник для отрисовки -
hasFocus- сфокусирован
paintCurrentValueBackground
public void paintCurrentValueBackground(Graphics g, Rectangle bounds, boolean hasFocus)
- Параметры:
-
g- экземплярGraphics -
bounds- прямоугольник для отрисовки -
hasFocus- сфокусирован
getDefaultSize
protected Dimension getDefaultSize()
- Возвращает:
- размер пустой области отображения
- См. также:
getDisplaySize
protected Dimension getDisplaySize()
Для раскрывающихся списков с немаленьким количеством элементов рекомендуется использовать значение отображения прообраза для существенного ускорения вычисления размера области отображения.
- Возвращает:
- размер области отображения, вычисленный из элементов раскрывающегося списка
- См. также:
getSizeForComponent
protected Dimension getSizeForComponent(Component comp)
- Параметры:
-
comp- проверяемыйComponent - Возвращает:
- размер компонента
- С:
- 1.7
installKeyboardActions
protected void installKeyboardActions()
uninstallKeyboardActions
protected void uninstallKeyboardActions()
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/javax/swing/plaf/basic/BasicComboBoxUI.html