Класс BasicComboPopup
- Все реализованные интерфейсы:
-
ImageObserver,MenuContainer,Serializable,Accessible,MenuElement,ComboPopup
- Прямые известные подклассы:
MetalComboBoxUI.MetalComboPopup
public class BasicComboPopup extends JPopupMenu implements ComboPopup
ComboPopup. Этот класс представляет собой ui для всплывающей части комбо-бокса. Все обработка событий обрабатывается классами-слушателями, созданными с помощью методов createxxxListener() и внутренними классами. Вы можете изменить поведение этого класса, переопределив методы createxxxListener() и предоставив собственных обработчиков событий или производя подклассы от предоставленных в этом классе.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими версиями Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, добавлена поддержка долгосрочного хранения всех JavaBeans в пакет java.beans. См. XMLEncoder.
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
class |
BasicComboPopup.InvocationKeyHandler |
Начиная с Java 2 platform v 1.4, этот класс устарел и включен только для обратной совместимости API. |
protected class |
BasicComboPopup.InvocationMouseHandler |
Слушатель, регистрируемый в комбо-боксе (а *не* в его всплывающем меню) для обработки событий мыши, влияющих на состояние всплывающего меню. |
protected class |
BasicComboPopup.InvocationMouseMotionHandler |
Этот слушатель отслеживает перетаскивание и обновляет текущий выбор в списке, если перетаскивание происходит над списком. |
protected class |
BasicComboPopup.ItemHandler |
Этот слушатель отслеживает изменения выбора в комбо-боксе. |
class |
BasicComboPopup.ListDataHandler |
Начиная с версии 1.4, этот класс устарел, ничего не делает и включен только для обратной совместимости API. |
protected class |
BasicComboPopup.ListMouseHandler |
Этот слушатель скрывает всплывающее меню, когда кнопка мыши отпускается в списке. |
protected class |
BasicComboPopup.ListMouseMotionHandler |
Этот слушатель изменяет выбранный элемент при перемещении курсора мыши над списком. |
protected class |
BasicComboPopup.ListSelectionHandler |
Начиная с Java 2 platform v 1.4, этот класс устарел, ничего не делает и включен только для обратной совместимости API. |
protected class |
BasicComboPopup.PropertyChangeHandler |
Этот слушатель отслеживает изменения связанных свойств в комбо-боксе. |
Вложенные классы/интерфейсы, объявленные в классе javax.swing.JPopupMenu
JPopupMenu.AccessibleJPopupMenu, JPopupMenu.Separator
Вложенные классы/интерфейсы, объявленные в классе javax.swing.JComponent
JComponent.AccessibleJComponent
Вложенные классы/интерфейсы, объявленные в классе java.awt.Container
Container.AccessibleAWTContainer
Вложенные классы/интерфейсы, объявленные в классе java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected Timer |
autoscrollTimer |
Это защищенное поле специфично для реализации. |
protected JComboBox |
comboBox |
Экземпляр JComboBox. |
protected boolean |
hasEntered |
true, если курсор мыши находится во всплывающем меню. |
protected boolean |
isAutoScrolling |
Если true, автоматическая прокрутка включена. |
protected ItemListener |
itemListener |
Это защищенное поле специфично для реализации. |
protected KeyListener |
keyListener |
Это защищенное поле специфично для реализации. |
protected JList |
list |
Это защищенное поле специфично для реализации. |
protected ListDataListener |
listDataListener |
Это защищенное поле специфично для реализации. |
protected MouseListener |
listMouseListener |
Это защищенное поле специфично для реализации. |
protected MouseMotionListener |
listMouseMotionListener |
Это защищенное поле специфично для реализации. |
protected ListSelectionListener |
listSelectionListener |
Это защищенное поле специфично для реализации. |
protected MouseListener |
mouseListener |
Это защищенное поле специфично для реализации. |
protected MouseMotionListener |
mouseMotionListener |
Это защищенное поле специфично для реализации. |
protected PropertyChangeListener |
propertyChangeListener |
Это защищенное поле специфично для реализации. |
protected static final int |
SCROLL_DOWN |
Направление прокрутки вниз. |
protected static final int |
SCROLL_UP |
Направление прокрутки вверх. |
protected int |
scrollDirection |
Направление прокрутки. |
protected JScrollPane |
scroller |
Это защищенное поле специфично для реализации. |
protected boolean |
valueIsAdjusting |
Начиная с Java 2 platform v1.4, это ранее не документированное поле больше не используется. |
Поля, объявленные в классе javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Поля, объявленные в классе java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Поля, объявленные в интерфейсе java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
BasicComboPopup |
Создает новый экземпляр BasicComboPopup. |
Краткое описание методов
| Modifier and Type | Method | Description |
|---|---|---|
protected void |
autoScrollDown() |
Этот защищённый метод специфичен для реализации и должен быть приватным. |
protected void |
autoScrollUp() |
Этот защищённый метод специфичен для реализации и должен быть приватным. |
protected Rectangle |
computePopupBounds |
Вычисляет расположение и размеры всплывающей части комбо-бокса на основе местоположения комбо-бокса и границ экрана. |
protected void |
configureList() |
Настраивает список, используемый для хранения элементов комбо-бокса во всплывающем окне. |
protected void |
configurePopup() |
Настраивает всплывающую часть комбо-бокса. |
protected void |
configureScroller() |
Настраивает прокручиваемую область, содержащую список внутри всплывающего окна комбо-бокса. |
protected MouseEvent |
convertMouseEvent |
Преобразует событие мыши. |
protected ItemListener |
createItemListener() |
Создаёт ItemListener, который будет добавлен в комбо-бокс. |
protected KeyListener |
createKeyListener() |
Создаёт обработчик нажатий клавиш, который будет добавлен в комбо-бокс. |
protected JList |
createList() |
Создаёт JList, используемый во всплывающем окне для отображения элементов из модели комбо-бокса. |
protected ListDataListener |
createListDataListener() |
Создаёт обработчик событий списка, который будет добавлен к ComboBoxModel. |
protected MouseListener |
createListMouseListener() |
Создаёт обработчик событий мыши, который отслеживает события мыши в списке всплывающего окна. |
protected MouseMotionListener |
createListMouseMotionListener() |
Создаёт обработчик событий перемещения мыши, который отслеживает события перемещения мыши в списке всплывающего окна. |
protected ListSelectionListener |
createListSelectionListener() |
Создаёт обработчик событий выбора элемента списка, который отслеживает изменения выбора в списке всплывающего окна. |
protected MouseListener |
createMouseListener() |
Создаёт обработчик, который будет отслеживать события нажатия и отпускания мыши на комбо-боксе. |
protected MouseMotionListener |
createMouseMotionListener() |
Создаёт обработчик событий перемещения мыши, который будет добавлен к комбо-боксу. |
protected PropertyChangeListener |
createPropertyChangeListener() |
Создаёт PropertyChangeListener, который будет добавлен в комбо-бокс. |
protected JScrollPane |
createScroller() |
Создаёт область прокрутки, содержащую прокручиваемый список. |
protected void |
delegateFocus |
Это вспомогательный метод, который помогает обработчикам событий определить, куда переместить фокус при отображении всплывающего окна. |
AccessibleContext |
getAccessibleContext() |
Получает AccessibleContext, связанный с этим BasicComboPopup. |
KeyListener |
getKeyListener() |
Реализация ComboPopup.getKeyListener(). |
JList |
getList() |
Реализация ComboPopup.getList(). |
MouseListener |
getMouseListener() |
Реализация ComboPopup.getMouseListener(). |
MouseMotionListener |
getMouseMotionListener() |
Реализация ComboPopup.getMouseMotionListener(). |
protected int |
getPopupHeightForRowCount |
Возвращает высоту всплывающего окна, основываясь на текущем ListCellRenderer и максимальном количестве строк. |
void |
hide() |
Реализация ComboPopup.hide(). |
protected void |
installComboBoxListeners() |
Этот метод добавляет необходимые слушатели в JComboBox. |
protected void |
installComboBoxModelListeners |
Устанавливает слушателей на модели комбо-бокса. |
protected void |
installKeyboardActions() |
Регистрирует действия с клавиатурой. |
protected void |
installListListeners() |
Добавляет слушателей к элементу управления списком. |
boolean |
isFocusTraversable() |
Переопределено, чтобы безусловно возвращать false. |
void |
show() |
Реализация ComboPopup.show(). |
protected void |
startAutoScrolling |
Этот защищённый метод специфичен для реализации и должен быть приватным. |
protected void |
stopAutoScrolling() |
Этот защищённый метод специфичен для реализации и должен быть приватным. |
protected void |
togglePopup() |
Делает всплывающее окно видимым, если оно скрыто, и скрывает его, если оно видно. |
protected void |
uninstallComboBoxModelListeners |
Удаляет слушателей из модели комбо-бокса |
void |
uninstallingUI() |
Вызывается при отсоединении UI. |
protected void |
uninstallKeyboardActions() |
Отменяет регистрацию действий с клавиатурой. |
protected void |
updateListBoxSelectionForEvent |
Вспомогательный метод, используемый обработчиками событий. |
Methods declared in class javax.swing.JPopupMenu
add, add, add, addMenuKeyListener, addPopupMenuListener, addSeparator, createActionChangeListener, createActionComponent, firePopupMenuCanceled, firePopupMenuWillBecomeInvisible, firePopupMenuWillBecomeVisible, getComponent, getComponentAtIndex, getComponentIndex, getDefaultLightWeightPopupEnabled, getInvoker, getLabel, getMargin, getMenuKeyListeners, getPopupMenuListeners, getSelectionModel, getSubElements, getUI, getUIClassID, insert, insert, isBorderPainted, isLightWeightPopupEnabled, isPopupTrigger, isVisible, menuSelectionChanged, pack, paintBorder, paramString, processKeyEvent, processKeyEvent, processMouseEvent, remove, removeMenuKeyListener, removePopupMenuListener, setBorderPainted, setDefaultLightWeightPopupEnabled, setInvoker, setLabel, setLightWeightPopupEnabled, setLocation, setPopupSize, setPopupSize, setSelected, setSelectionModel, setUI, setVisible, show, updateUI
Methods declared in class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
Methods declared in class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
Methods declared in class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods declared in interface javax.swing.plaf.basic.ComboPopup
isVisible
Подробное описание полей
comboBox
protected JComboBox<Object> comboBox
JComboBox.list
protected JList<Object> list
- См. также:
scroller
protected JScrollPane scroller
- См. также:
valueIsAdjusting
protected boolean valueIsAdjusting
mouseMotionListener
protected MouseMotionListener mouseMotionListener
- См. также:
mouseListener
protected MouseListener mouseListener
- См. также:
keyListener
protected KeyListener keyListener
- См. также:
listSelectionListener
protected ListSelectionListener listSelectionListener
- См. также:
listMouseListener
protected MouseListener listMouseListener
- См. также:
listMouseMotionListener
protected MouseMotionListener listMouseMotionListener
- См. также:
propertyChangeListener
protected PropertyChangeListener propertyChangeListener
- См. также:
listDataListener
protected ListDataListener listDataListener
- См. также:
itemListener
protected ItemListener itemListener
- См. также:
autoscrollTimer
protected Timer autoscrollTimer
hasEntered
protected boolean hasEntered
true, если курсор мыши находится в всплывающем окне.isAutoScrolling
protected boolean isAutoScrolling
true включена автоматическая прокрутка.scrollDirection
protected int scrollDirection
SCROLL_UP
protected static final int SCROLL_UP
- См. также:
SCROLL_DOWN
protected static final int SCROLL_DOWN
- См. также:
Подробное описание конструкторов
BasicComboPopup
public BasicComboPopup(JComboBox<Object> combo)
BasicComboPopup.- Параметры:
-
combo- экземплярJComboBox
Подробное описание методов
show
public void show()
- Указано в:
-
showв интерфейсеComboPopup - Переопределяет:
-
showв классеComponent
hide
public void hide()
- Указано в:
-
hideв интерфейсеComboPopup - Переопределяет:
-
hideв классеJComponent
getList
public JList<Object> getList()
- Указано в:
-
getListв интерфейсеComboPopup - Возвращает:
- список, используемый для отображения элементов в раскрывающемся списке
getMouseListener
public MouseListener getMouseListener()
- Указано в:
-
getMouseListenerв интерфейсеComboPopup - Возвращает:
- объект
MouseListenerили null - См. также:
getMouseMotionListener
public MouseMotionListener getMouseMotionListener()
- Указано в:
-
getMouseMotionListenerв интерфейсеComboPopup - Возвращает:
- объект
MouseMotionListenerили null - См. также:
getKeyListener
public KeyListener getKeyListener()
- Указано в:
-
getKeyListenerв интерфейсеComboPopup - Возвращает:
- объект
KeyListenerили null - См. также:
uninstallingUI
public void uninstallingUI()
- Указано в:
-
uninstallingUIв интерфейсеComboPopup
uninstallComboBoxModelListeners
protected void uninstallComboBoxModelListeners(ComboBoxModel<?> model)
- Параметры:
-
model- Модель выпадающего списка для установки слушателей - См. также:
uninstallKeyboardActions
protected void uninstallKeyboardActions()
createMouseListener
protected MouseListener createMouseListener()
- Возвращает:
- a
MouseListener, который будет добавлен в выпадающий список, или null
createMouseMotionListener
protected MouseMotionListener createMouseMotionListener()
- Возвращает:
- a
MouseMotionListener, который будет добавлен в выпадающий список, или null
createKeyListener
protected KeyListener createKeyListener()
- Возвращает:
- a
KeyListenerили null
createListSelectionListener
protected ListSelectionListener createListSelectionListener()
- Возвращает:
- экземпляр
ListSelectionListenerили null
createListDataListener
protected ListDataListener createListDataListener()
ComboBoxModel. Если этот метод возвращает null, то слушатель не будет добавлен в модель выпадающего списка.- Возвращает:
- экземпляр
ListDataListenerили null
createListMouseListener
protected MouseListener createListMouseListener()
- Возвращает:
- экземпляр
MouseListenerили null
createListMouseMotionListener
protected MouseMotionListener createListMouseMotionListener()
- Возвращает:
- экземпляр
MouseMotionListenerили null
createPropertyChangeListener
protected PropertyChangeListener createPropertyChangeListener()
- Возвращает:
- экземпляр
PropertyChangeListenerили null
createItemListener
protected ItemListener createItemListener()
Подклассы могут переопределить этот метод для возвращения экземпляров своих собственных обработчиков событий выбора элементов.
- Возвращает:
- экземпляр
ItemListenerили null
createList
protected JList<Object> createList()
- Возвращает:
- a
JList, используемый для отображения элементов выпадающего списка
configureList
protected void configureList()
- См. также:
installListListeners
protected void installListListeners()
createScroller
protected JScrollPane createScroller()
- Возвращает:
- полосу прокрутки, содержащую прокручиваемый список
configureScroller
protected void configureScroller()
configurePopup
protected void configurePopup()
installComboBoxListeners
protected void installComboBoxListeners()
installComboBoxModelListeners
protected void installComboBoxModelListeners(ComboBoxModel<?> model)
uninstallComboBoxModelListeners.- Параметры:
-
model- Модель выпадающего списка для установки слушателей - См. также:
installKeyboardActions
protected void installKeyboardActions()
isFocusTraversable
public boolean isFocusTraversable()
- Переопределяет:
-
isFocusTraversableв классеComponent - Возвращает:
-
true, если этотComponentимеет возможность получения фокуса;falseв противном случае - См. также:
startAutoScrolling
protected void startAutoScrolling(int direction)
- Параметры:
-
direction- направление прокрутки
stopAutoScrolling
protected void stopAutoScrolling()
autoScrollUp
protected void autoScrollUp()
autoScrollDown
protected void autoScrollDown()
getAccessibleContext
public AccessibleContext getAccessibleContext()
- Определено в:
-
getAccessibleContextв интерфейсеAccessible - Переопределяет:
-
getAccessibleContextв классеJPopupMenu - Возвращает:
- AccessibleContext для BasicComboPopup
- С:
- 1.5
delegateFocus
protected void delegateFocus(MouseEvent e)
- Параметры:
-
e- событие мыши
togglePopup
protected void togglePopup()
convertMouseEvent
protected MouseEvent convertMouseEvent(MouseEvent e)
- Параметры:
-
e- событие мыши - Возвращает:
- преобразованное событие мыши
getPopupHeightForRowCount
protected int getPopupHeightForRowCount(int maxRowCount)
- Параметры:
-
maxRowCount- количество строк - Возвращает:
- высоту всплывающего меню
computePopupBounds
protected Rectangle computePopupBounds(int px, int py, int pw, int ph)
- Параметры:
-
px- начальная координата x -
py- начальная координата y -
pw- начальная ширина -
ph- начальная высота - Возвращает:
- прямоугольник, представляющий положение и размер всплывающего меню
updateListBoxSelectionForEvent
protected void updateListBoxSelectionForEvent(MouseEvent anEvent, boolean shouldScroll)
- Параметры:
-
anEvent- событие мыши -
shouldScroll- еслиtrueсписок должен быть прокручен.
© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/plaf/basic/BasicComboPopup.html