Класс JComboBox<E>
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JComboBox<E>
- Type Parameters:
-
E- тип элементов этого выпадающего списка
- Все реализованные интерфейсы:
- ActionListener, ImageObserver, ItemSelectable, MenuContainer, Serializable, EventListener, Accessible, ListDataListener
public class JComboBox<E> extends JComponent implements ItemSelectable, ListDataListener, ActionListener, Accessible
Компонент, объединяющий кнопку или поле редактирования и выпадающий список. Пользователь может выбрать значение из выпадающего списка, который появляется по запросу. Если вы делаете выпадающий список редактируемым, то выпадающий список включает в себя поле редактирования, в которое пользователь может ввести значение.
Предупреждение: Swing не является потокобезопасным. Дополнительную информацию см. в Политике потоков Swing.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans™ была добавлена в пакет java.beans. Пожалуйста, ознакомьтесь с XMLEncoder.
Подробнее см. Как использовать выпадающие списки в Java Tutorial.
- См. также:
-
ComboBoxModel,DefaultComboBoxModel
Вложенные классы
| Модификатор и тип | Класс и описание |
|---|---|
protected class |
JComboBox.AccessibleJComboBox Этот класс реализует поддержку доступности для класса |
static interface |
JComboBox.KeySelectionManager Интерфейс, определяющий |
Вложенные классы/интерфейсы, унаследованные от класса javax.swing.JComponent
JComponent.AccessibleJComponent Вложенные классы/интерфейсы, унаследованные от класса java.awt.Container
Container.AccessibleAWTContainer Вложенные классы/интерфейсы, унаследованные от класса java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy Краткое описание полей
| Модификатор и тип | Поле и описание |
|---|---|
protected String |
actionCommand Это защищенное поле является специфичным для реализации. |
protected ComboBoxModel<E> |
dataModel Это защищенное поле является специфичным для реализации. |
protected ComboBoxEditor |
editor Это защищенное поле является специфичным для реализации. |
protected boolean |
isEditable Это защищенное поле является специфичным для реализации. |
protected JComboBox.KeySelectionManager |
keySelectionManager Это защищенное поле является специфичным для реализации. |
protected boolean |
lightWeightPopupEnabled Это защищенное поле является специфичным для реализации. |
protected int |
maximumRowCount Это защищенное поле является специфичным для реализации. |
protected ListCellRenderer<? super E> |
renderer Это защищенное поле является специфичным для реализации. |
protected Object |
selectedItemReminder Это защищенное поле является специфичным для реализации. |
Поля, унаследованные от класса 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 Краткое описание конструкторов
| Конструктор и описание |
|---|
JComboBox() Создает |
JComboBox(ComboBoxModel<E> aModel) Создает |
JComboBox(E[] items) Создает |
JComboBox(Vector<E> items) Создает |
Краткое описание методов
| Модификатор и тип | Метод и описание |
|---|---|
void |
actionPerformed(ActionEvent e) Этот метод является общедоступным в качестве побочного эффекта реализации. |
protected void |
actionPropertyChanged(Action action,
String propertyName) Обновляет состояние раскрывающегося списка в ответ на изменения свойств в связанном действии. |
void |
addActionListener(ActionListener l) Добавляет |
void |
addItem(E item) Добавляет элемент в список элементов. |
void |
addItemListener(ItemListener aListener) Добавляет |
void |
addPopupMenuListener(PopupMenuListener l) Добавляет слушателя |
void |
configureEditor(ComboBoxEditor anEditor,
Object anItem) Инициализирует редактор указанным элементом. |
protected void |
configurePropertiesFromAction(Action a) Устанавливает свойства этого раскрывающегося списка, чтобы соответствовать свойствам в указанном |
void |
contentsChanged(ListDataEvent e) Этот метод является общедоступным в качестве побочного эффекта реализации. |
protected PropertyChangeListener |
createActionPropertyChangeListener(Action a) Создает и возвращает |
protected JComboBox.KeySelectionManager |
createDefaultKeySelectionManager() Возвращает экземпляр менеджера выбора по умолчанию. |
protected void |
fireActionEvent() Уведомляет всех слушателей, которые проявили интерес к получению уведомлений об этом типе события. |
protected void |
fireItemStateChanged(ItemEvent e) Уведомляет всех слушателей, которые проявили интерес к получению уведомлений об этом типе события. |
void |
firePopupMenuCanceled() Уведомляет |
void |
firePopupMenuWillBecomeInvisible() Уведомляет |
void |
firePopupMenuWillBecomeVisible() Уведомляет |
AccessibleContext |
getAccessibleContext() Получает AccessibleContext, связанный с этим JComboBox. |
Action |
getAction() Возвращает текущее установленное значение |
String |
getActionCommand() Возвращает командную строку действия, которая включена в событие, отправленное слушателям действий. |
ActionListener[] |
getActionListeners() Возвращает массив всех |
ComboBoxEditor |
getEditor() Возвращает редактор, используемый для рисования и редактирования выбранного элемента в поле |
E |
getItemAt(int index) Возвращает элемент списка по указанному индексу. |
int |
getItemCount() Возвращает количество элементов в списке. |
ItemListener[] |
getItemListeners() Возвращает массив всех слушателей |
JComboBox.KeySelectionManager |
getKeySelectionManager() Возвращает менеджер выбора ключей списка. |
int |
getMaximumRowCount() Возвращает максимальное количество элементов, которые может отобразить раскрывающийся список без полосы прокрутки. |
ComboBoxModel<E> |
getModel() Возвращает модель данных, в настоящее время используемую |
PopupMenuListener[] |
getPopupMenuListeners() Возвращает массив всех |
E |
getPrototypeDisplayValue() Возвращает значение «прототипического отображения» — объект, используемый для расчёта высоты и ширины отображения. |
ListCellRenderer<? super E> |
getRenderer() Возвращает рендерер, используемый для отображения выбранного элемента в поле |
int |
getSelectedIndex() Возвращает первый элемент в списке, соответствующий данному элементу. |
Object |
getSelectedItem() Возвращает текущий выбранный элемент. |
Object[] |
getSelectedObjects() Возвращает массив, содержащий выбранный элемент. |
ComboBoxUI |
getUI() Возвращает объект L&F, который отрисовывает этот компонент. |
String |
getUIClassID() Возвращает имя класса L&F, который отрисовывает этот компонент. |
void |
hidePopup() Закрывает всплывающее окно раскрывающегося списка. |
void |
insertItemAt(E item,
int index) Вставляет элемент в список элементов по заданному индексу. |
protected void |
installAncestorListener() |
void |
intervalAdded(ListDataEvent e) Этот метод является общедоступным в качестве побочного эффекта реализации. |
void |
intervalRemoved(ListDataEvent e) Этот метод является общедоступным в качестве побочного эффекта реализации. |
boolean |
isEditable() Возвращает true, если |
boolean |
isLightWeightPopupEnabled() Получает значение свойства |
boolean |
isPopupVisible() Определяет видимость всплывающего окна. |
protected String |
paramString() Возвращает строковое представление этого |
protected boolean |
processKeyBinding(KeyStroke ks,
KeyEvent e,
int condition,
boolean pressed) Вызывается для обработки нажатия клавиш для |
void |
processKeyEvent(KeyEvent e) Обрабатывает |
void |
removeActionListener(ActionListener l) Удаляет |
void |
removeAllItems() Удаляет все элементы из списка элементов. |
void |
removeItem(Object anObject) Удаляет элемент из списка элементов. |
void |
removeItemAt(int anIndex) Удаляет элемент по индексу |
void |
removeItemListener(ItemListener aListener) Удаляет |
void |
removePopupMenuListener(PopupMenuListener l) Удаляет |
protected void |
selectedItemChanged() Этот защищённый метод зависит от реализации. |
boolean |
selectWithKeyChar(char keyChar) Выбирает элемент списка, соответствующий указанному символу клавиатуры, и возвращает true, если такой элемент существует. |
void |
setAction(Action a) Устанавливает значение |
void |
setActionCommand(String aCommand) Устанавливает командную строку действия, которая должна быть включена в событие, отправленное слушателям действий. |
void |
setEditable(boolean aFlag) Определяет, является ли поле |
void |
setEditor(ComboBoxEditor anEditor) Устанавливает редактор, используемый для рисования и редактирования выбранного элемента в поле |
void |
setEnabled(boolean b) Включает раскрывающийся список, чтобы элементы можно было выбрать. |
void |
setKeySelectionManager(JComboBox.KeySelectionManager aManager) Устанавливает объект, который преобразует символ клавиатуры в выбор элемента списка. |
void |
setLightWeightPopupEnabled(boolean aFlag) Устанавливает свойство |
void |
setMaximumRowCount(int count) Устанавливает максимальное количество строк, которое отображает |
void |
setModel(ComboBoxModel<E> aModel) Устанавливает модель данных, которую использует |
void |
setPopupVisible(boolean v) Устанавливает видимость всплывающего окна. |
void |
setPrototypeDisplayValue(E prototypeDisplayValue) Устанавливает значение отображаемого прототипа, используемое для расчёта размера отображения для UI-части. |
void |
setRenderer(ListCellRenderer<? super E> aRenderer) Устанавливает рендерер, который рисует элементы списка и выбранный элемент списка в поле JComboBox. |
void |
setSelectedIndex(int anIndex) Выбирает элемент по индексу |
void |
setSelectedItem(Object anObject) Устанавливает выбранный элемент в области отображения раскрывающегося списка на объект в аргументе. |
void |
setUI(ComboBoxUI ui) Устанавливает объект L&F, который отображает этот компонент. |
void |
showPopup() Вызывает отображение всплывающего окна раскрывающегося списка. |
void |
updateUI() Сбрасывает свойство UI до значения из текущей темы оформления. |
Методы, унаследованные от класса javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, 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, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, 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, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update Методы, унаследованные от класса 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, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree Методы, унаследованные от класса 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, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait Поля
dataModel
protected ComboBoxModel<E> dataModel
Это защищенное поле, зависящее от реализации. Не пытайтесь напрямую получить доступ к нему или переопределять его. Используйте методы-акссессоры вместо этого.
- См. также:
-
getModel(),setModel(javax.swing.ComboBoxModel<E>)
renderer
protected ListCellRenderer<? super E> renderer
Это защищенное поле, зависящее от реализации. Не пытайтесь напрямую получить доступ к нему или переопределять его. Используйте методы-акссессоры вместо этого.
editor
protected ComboBoxEditor editor
Это защищенное поле, зависящее от реализации. Не пытайтесь напрямую получить доступ к нему или переопределять его. Используйте методы-акссессоры вместо этого.
- См. также:
-
getEditor(),setEditor(javax.swing.ComboBoxEditor)
maximumRowCount
protected int maximumRowCount
Это защищенное поле, зависящее от реализации. Не пытайтесь напрямую получить доступ к нему или переопределять его. Используйте методы-акссессоры вместо этого.
- См. также:
-
getMaximumRowCount(),setMaximumRowCount(int)
isEditable
protected boolean isEditable
Это защищенное поле, зависящее от реализации. Не пытайтесь напрямую получить доступ к нему или переопределять его. Используйте методы-акссессоры вместо этого.
- См. также:
-
isEditable,setEditable(boolean)
keySelectionManager
protected JComboBox.KeySelectionManager keySelectionManager
Это защищенное поле, зависящее от реализации. Не пытайтесь напрямую получить доступ к нему или переопределять его. Используйте методы-акссессоры вместо этого.
- См. также:
-
setKeySelectionManager(javax.swing.JComboBox.KeySelectionManager),getKeySelectionManager()
actionCommand
protected String actionCommand
Это защищенное поле, зависящее от реализации. Не пытайтесь напрямую получить доступ к нему или переопределять его. Используйте методы-акссессоры вместо этого.
- См. также:
-
setActionCommand(java.lang.String),getActionCommand()
lightWeightPopupEnabled
protected boolean lightWeightPopupEnabled
Это защищенное поле, зависящее от реализации. Не пытайтесь напрямую получить доступ к нему или переопределять его. Используйте методы-акссессоры вместо этого.
selectedItemReminder
protected Object selectedItemReminder
Это защищенное поле, зависящее от реализации. Не пытайтесь напрямую получить доступ к нему или переопределять его.
Конструкторы
JComboBox
public JComboBox(ComboBoxModel<E> aModel)
Создаёт JComboBox, получающий свои элементы из существующего ComboBoxModel. Поскольку ComboBoxModel предоставляет, созданный с помощью этого конструктора компонент не создаёт модель по умолчанию и может повлиять на поведение методов insert, remove и add.
- Параметры:
-
aModel-ComboBoxModel, предоставляющий отображаемый список элементов - См. также:
DefaultComboBoxModel
JComboBox
public JComboBox(E[] items)
Создаёт JComboBox, содержащий элементы в указанном массиве. По умолчанию первым выбранным элементом (и моделью данных) становится первый элемент в массиве.
- Параметры:
-
items- массив объектов для вставки в выпадающий список - См. также:
DefaultComboBoxModel
JComboBox
public JComboBox(Vector<E> items)
Создаёт JComboBox, содержащий элементы в указанном векторе. По умолчанию первым выбранным элементом (и моделью данных) становится первый элемент в векторе.
- Параметры:
-
items- массив векторов для вставки в выпадающий список - См. также:
DefaultComboBoxModel
JComboBox
public JComboBox()
Создаёт JComboBox с моделью данных по умолчанию. Модель данных по умолчанию - пустой список объектов. Используйте addItem для добавления элементов. По умолчанию первым выбранным элементом становится первый элемент в модели данных.
- См. также:
DefaultComboBoxModel
Методы
installAncestorListener
protected void installAncestorListener()
setUI
public void setUI(ComboBoxUI ui)
Устанавливает объект L&F, который отрисовывает этот компонент.
- Параметры:
-
ui- объект L&FComboBoxUI - См. также:
UIDefaults.getUI(javax.swing.JComponent)
updateUI
public void updateUI()
Сбрасывает свойство UI на значение из текущей темы оформления.
- Переопределяет:
-
updateUIв классеJComponent - См. также:
JComponent.updateUI()
getUIClassID
public String getUIClassID()
Возвращает имя класса L&F, который отрисовывает этот компонент.
- Переопределяет:
-
getUIClassIDв классеJComponent - Возвращает:
- строку "ComboBoxUI"
- См. также:
-
JComponent.getUIClassID(),UIDefaults.getUI(javax.swing.JComponent)
getUI
public ComboBoxUI getUI()
Возвращает объект L&F, который отрисовывает этот компонент.
- Возвращает:
- объект ComboBoxUI, который отрисовывает этот компонент
setModel
public void setModel(ComboBoxModel<E> aModel)
Устанавливает модель данных, которую JComboBox использует для получения списка элементов.
- Параметры:
-
aModel-ComboBoxModel, предоставляющий отображаемый список элементов
getModel
public ComboBoxModel<E> getModel()
Возвращает модель данных, текущую используемую JComboBox.
- Возвращает:
ComboBoxModel, предоставляющий отображаемый список элементов
setLightWeightPopupEnabled
public void setLightWeightPopupEnabled(boolean aFlag)
Устанавливает свойство lightWeightPopupEnabled, которое указывает, следует ли использовать лёгкий Component для размещения JComboBox, или тяжёлый Component, такой как Panel или Window. Решение о лёгком или тяжёлом окне в конечном итоге принимается JComboBox. Лёгкие окна более эффективны, чем тяжёлые, но лёгкие и тяжёлые компоненты плохо сочетаются в GUI. Если ваше приложение использует лёгкие и тяжёлые компоненты, отключите лёгкие всплывающие окна. Значение свойства lightWeightPopupEnabled по умолчанию - true, если не указано иначе темой оформления. Некоторые темы оформления всегда используют тяжёлые всплывающие окна, независимо от значения этого свойства.
Смотрите статью Смешивание тяжёлых и лёгких компонентов Этот метод генерирует событие изменения свойства.
- Параметры:
-
aFlag- еслиtrue, лёгкие всплывающие окна желательны
isLightWeightPopupEnabled
public boolean isLightWeightPopupEnabled()
Получает значение свойства lightWeightPopupEnabled.
- Возвращает:
- значение свойства
lightWeightPopupEnabled - См. также:
setLightWeightPopupEnabled(boolean)
setEditable
public void setEditable(boolean aFlag)
Определяет, является ли поле JComboBox редактируемым. Редактируемое поле JComboBox позволяет пользователю вводить текст или выбирать элемент из списка для инициализации поля, после чего оно может быть отредактировано. (Редактирование влияет только на поле, элемент списка остаётся неизменным.) Нередактируемое поле JComboBox отображает выбранный элемент в поле, но выбор нельзя изменить.
- Параметры:
-
aFlag- логическое значение, где true указывает, что поле редактируемо
isEditable
public boolean isEditable()
Возвращает true, если JComboBox редактируемо. По умолчанию, выпадающий список не редактируемый.
- Возвращает:
- true, если
JComboBoxредактируемо, иначе false
setMaximumRowCount
public void setMaximumRowCount(int count)
Устанавливает максимальное количество строк, отображаемых в JComboBox . Если количество объектов в модели больше, чем счётчик, выпадающий список использует полосу прокрутки.
- Параметры:
-
count- целое число, определяющее максимальное количество отображаемых элементов в списке перед использованием полосы прокрутки
getMaximumRowCount
public int getMaximumRowCount()
Возвращает максимальное количество элементов, которые может отображать выпадающий список без полосы прокрутки.
- Возвращает:
- целое число, определяющее максимальное количество элементов, отображаемых в списке перед использованием полосы прокрутки
setRenderer
public void setRenderer(ListCellRenderer<? super E> aRenderer)
Устанавливает рендерер, который отрисовывает элементы списка и выбранный из списка элемент в поле JComboBox. Рендерер используется, если JComboBox не редактируем. Если он редактируем, используется редактор для отрисовки и редактирования выбранного элемента.
Рендерер по умолчанию отображает строку или значок. Другие рендеры могут обрабатывать графические изображения и составные элементы.
Для отображения выбранного элемента вызывается aRenderer.getListCellRendererComponent, передавая объект списка и индекс -1.
- Параметры:
-
aRenderer-ListCellRendererдля отображения выбранного элемента - См. также:
setEditor(javax.swing.ComboBoxEditor)
getRenderer
public ListCellRenderer<? super E> getRenderer()
Возвращает рендерер, используемый для отображения выбранного элемента в поле JComboBox.
- Возвращает:
ListCellRendererдля отображения выбранного элемента.
setEditor
public void setEditor(ComboBoxEditor anEditor)
Устанавливает редактор, используемый для рисования и редактирования выбранного элемента в поле JComboBox. Редактор используется только в том случае, если получаемый JComboBox редактируется. Если нет, то раскрывающийся список использует рендерер для отрисовки выбранного элемента.
- Parameters:
-
anEditor-ComboBoxEditorдля отображения выбранного элемента - See Also:
setRenderer(javax.swing.ListCellRenderer<? super E>)
getEditor
public ComboBoxEditor getEditor()
Возвращает редактор, используемый для рисования и редактирования выбранного элемента в поле JComboBox.
- Returns:
ComboBoxEditorдля отображения выбранного элемента
setSelectedItem
public void setSelectedItem(Object anObject)
Устанавливает выбранный элемент в области отображения раскрывающегося списка в объект в аргументе. Если anObject находится в списке, область отображения показывает anObject выбранным.
Если anObject не находится в списке, и раскрывающийся список не редактируется, текущий выбор не изменится. Для редактируемых раскрывающихся списков выбор изменится на anObject.
Если это изменение выбранного элемента, ItemListener добавленные в раскрывающийся список, будут уведомлены об одном или двух ItemEvents. Если есть текущий выбранный элемент, будет вызвано ItemEvent, и изменение состояния будет ItemEvent.DESELECTED. Если anObject находится в списке и не выбран в данный момент, будет вызвано ItemEvent, и изменение состояния будет ItemEvent.SELECTED.
ActionListener добавленные в раскрывающийся список, будут уведомлены об ActionEvent при вызове этого метода.
- Parameters:
-
anObject- объект списка для выбора; используйтеnullдля очистки выбора
getSelectedItem
public Object getSelectedItem()
Возвращает текущий выбранный элемент.
Если раскрывающийся список редактируется, то это значение может не быть добавлено в раскрывающийся список с помощью addItem, insertItemAt или конструкторов данных.
- Returns:
- текущий выбранный объект
- See Also:
setSelectedItem(java.lang.Object)
setSelectedIndex
public void setSelectedIndex(int anIndex)
Выбирает элемент с индексом anIndex.
- Parameters:
-
anIndex- целое число, определяющее элемент списка для выбора, где 0 определяет первый элемент в списке, а -1 указывает на отсутствие выбора - Throws:
-
IllegalArgumentException- еслиanIndex< -1 илиanIndexбольше или равно размеру
getSelectedIndex
public int getSelectedIndex()
Возвращает первый элемент в списке, который соответствует заданному элементу. Результат не всегда определен, если JComboBox позволяет выбирать элементы, которые не находятся в списке. Возвращает -1, если нет выбранного элемента или если пользователь указал элемент, который не находится в списке.
- Returns:
- целое число, определяющее текущий выбранный элемент списка, где 0 определяет первый элемент в списке; или -1, если нет выбранного элемента или текущий выбранный элемент не находится в списке
getPrototypeDisplayValue
public E getPrototypeDisplayValue()
Возвращает значение "прототипического отображения" — объект, используемый для расчета высоты и ширины отображения.
- Returns:
- значение свойства
prototypeDisplayValue - Since:
- 1.4
- See Also:
setPrototypeDisplayValue(E)
setPrototypeDisplayValue
public void setPrototypeDisplayValue(E prototypeDisplayValue)
Устанавливает значение прототипа отображения, используемое для расчета размера отображения для части UI.
Если значение прототипа отображения указано, предпочтительный размер раскрывающегося списка рассчитывается путем настройки рендерера со значением прототипа отображения и получения его предпочтительного размера. Указание предпочтительного значения отображения часто бывает полезно, когда раскрывающийся список будет отображать большое количество данных. Если значение прототипа отображения не указано, рендерер должен быть настроен для каждого значения из модели, и его предпочтительный размер должен быть получен, что может быть относительно дорогим.
- Parameters:
-
prototypeDisplayValue- - Since:
- 1.4
- See Also:
getPrototypeDisplayValue()
addItem
public void addItem(E item)
Добавляет элемент в список элементов. Этот метод работает только в том случае, если JComboBox использует изменяемую модель данных.
Предупреждение: могут возникнуть проблемы с фокусом и навигацией по клавиатуре, если вы добавляете дублируемые объекты String. Обходным решением является добавление новых объектов вместо объектов String и обеспечение того, что метод toString() определен. Например:
comboBox.addItem(makeObj("Item 1"));
comboBox.addItem(makeObj("Item 1"));
...
private Object makeObj(final String item) {
return new Object() { public String toString() { return item; } };
}
- Parameters:
-
item- элемент, который нужно добавить в список - See Also:
MutableComboBoxModel
insertItemAt
public void insertItemAt(E item,
int index) Вставляет элемент в список элементов в заданный индекс. Этот метод работает только в том случае, если JComboBox использует изменяемую модель данных.
- Parameters:
-
item- элемент, который нужно добавить в список -
index- целое число, определяющее позицию, в которую нужно добавить элемент - See Also:
MutableComboBoxModel
removeItem
public void removeItem(Object anObject)
Удаляет элемент из списка элементов. Этот метод работает только в том случае, если JComboBox использует изменяемую модель данных.
- Parameters:
-
anObject- объект, который нужно удалить из списка элементов - See Also:
MutableComboBoxModel
removeItemAt
public void removeItemAt(int anIndex)
Удаляет элемент в anIndex. Этот метод работает только в том случае, если JComboBox использует изменяемую модель данных.
- Parameters:
-
anIndex- целое число, определяющее индекс элемента для удаления, где 0 указывает на первый элемент в списке - See Also:
MutableComboBoxModel
removeAllItems
public void removeAllItems()
Удаляет все элементы из списка элементов.
showPopup
public void showPopup()
Выводит всплывающее окно раскрывающегося списка.
- See Also:
setPopupVisible(boolean)
hidePopup
public void hidePopup()
Закрывает всплывающее окно раскрывающегося списка.
- See Also:
setPopupVisible(boolean)
setPopupVisible
public void setPopupVisible(boolean v)
Устанавливает видимость всплывающего окна.
isPopupVisible
public boolean isPopupVisible()
Определяет видимость всплывающего окна.
- Returns:
- true, если всплывающее окно видимое, иначе возвращает false
addItemListener
public void addItemListener(ItemListener aListener)
Добавляет ItemListener.
aListener получит один или два ItemEvent при изменении выбранного элемента.
- Specified by:
-
addItemListenerв интерфейсеItemSelectable - Parameters:
-
aListener-ItemListener, который нужно уведомить - See Also:
setSelectedItem(java.lang.Object)
removeItemListener
public void removeItemListener(ItemListener aListener)
Удаляет ItemListener.
- Specified by:
-
removeItemListenerв интерфейсеItemSelectable - Parameters:
-
aListener-ItemListenerдля удаления - See Also:
ItemEvent
getItemListeners
public ItemListener[] getItemListeners()
Возвращает массив всех ItemListeners, добавленных в этот JComboBox с помощью addItemListener().
- Returns:
- все
ItemListeners, добавленные, или пустой массив, если слушатели не были добавлены - Since:
- 1.4
addActionListener
public void addActionListener(ActionListener l)
Добавляет ActionListener.
ActionListener получит ActionEvent при совершении выбора. Если раскрывающийся список редактируется, ActionEvent будет сгенерирован при остановке редактирования.
- Parameters:
-
l-ActionListener, который нужно уведомить - See Also:
setSelectedItem(java.lang.Object)
removeActionListener
public void removeActionListener(ActionListener l)
Удаляет ActionListener.
- Parameters:
-
l-ActionListenerдля удаления
getActionListeners
public ActionListener[] getActionListeners()
Возвращает массив всех ActionListeners, добавленных в этот JComboBox с помощью addActionListener().
- Returns:
- все
ActionListeners, добавленные, или пустой массив, если слушатели не были добавлены - Since:
- 1.4
addPopupMenuListener
public void addPopupMenuListener(PopupMenuListener l)
Добавляет слушателя PopupMenu, который будет реагировать на уведомления из всплывающего списка раскрывающегося списка.
Для всех стандартных визуальных стилей, поставляемых с Java, часть всплывающего списка раскрывающегося списка реализуется как JPopupMenu. Пользовательский визуальный стиль может не реализовать это таким образом и, следовательно, не получит уведомление.
- Parameters:
-
l-PopupMenuListenerдля добавления - Since:
- 1.4
removePopupMenuListener
public void removePopupMenuListener(PopupMenuListener l)
Удаляет PopupMenuListener.
- Parameters:
-
l-PopupMenuListenerдля удаления - Since:
- 1.4
- See Also:
addPopupMenuListener(javax.swing.event.PopupMenuListener)
getPopupMenuListeners
public PopupMenuListener[] getPopupMenuListeners()
Возвращает массив всех PopupMenuListeners, добавленных в этот JComboBox с помощью addPopupMenuListener().
- Возвращает:
- все добавленные
PopupMenuListeners или пустой массив, если слушатели не были добавлены - С тех пор:
- 1.4
firePopupMenuWillBecomeVisible
public void firePopupMenuWillBecomeVisible()
Уведомляет PopupMenuListeners о том, что всплывающее меню комбо-бокса станет видимым.
Этот метод является публичным, но вызывать его следует только делегату пользовательского интерфейса.
- С тех пор:
- 1.4
- См. также:
addPopupMenuListener(javax.swing.event.PopupMenuListener)
firePopupMenuWillBecomeInvisible
public void firePopupMenuWillBecomeInvisible()
Уведомляет PopupMenuListeners о том, что всплывающее меню комбо-бокса стало невидимым.
Этот метод является публичным, но вызывать его следует только делегату пользовательского интерфейса.
- С тех пор:
- 1.4
- См. также:
addPopupMenuListener(javax.swing.event.PopupMenuListener)
firePopupMenuCanceled
public void firePopupMenuCanceled()
Уведомляет PopupMenuListeners о том, что всплывающее меню комбо-бокса было отменено.
Этот метод является публичным, но вызывать его следует только делегату пользовательского интерфейса.
- С тех пор:
- 1.4
- См. также:
addPopupMenuListener(javax.swing.event.PopupMenuListener)
setActionCommand
public void setActionCommand(String aCommand)
Устанавливает команду действия, которая должна быть включена в событие, отправляемое слушателям действий.
- Параметры:
-
aCommand- строка, содержащая "команду", отправляемую слушателям действий; один и тот же слушатель может затем выполнять разные действия в зависимости от полученной команды
getActionCommand
public String getActionCommand()
Возвращает команду действия, включенную в событие, отправляемое слушателям действий.
- Возвращает:
- строку, содержащую "команду", отправляемую слушателям действий.
setAction
public void setAction(Action a)
Устанавливает Action для источника ActionEvent. Новый Action заменяет любой ранее установленный Action, но не влияет на ActionListeners независимо добавленные с помощью addActionListener. Если Action уже зарегистрирован как ActionListener для источника ActionEvent, он не регистрируется повторно.
Установка Action приводит к немедленному изменению всех свойств, описанных в Компоненты Swing, поддерживающие Action. Впоследствии свойства комбо-бокса автоматически обновляются по мере изменения свойств Action.
Этот метод использует три других метода для установки и отслеживания значений свойств Action . Он использует метод configurePropertiesFromAction для немедленного изменения свойств комбо-бокса. Для отслеживания изменений значений свойств Action этот метод регистрирует PropertyChangeListener , возвращаемый createActionPropertyChangeListener. По умолчанию PropertyChangeListener вызывает метод actionPropertyChanged при изменении свойства в Action.
- Параметры:
-
a-ActionдляJComboBox, илиnull. - С тех пор:
- 1.3
- См. также:
-
Action,getAction(),configurePropertiesFromAction(javax.swing.Action),createActionPropertyChangeListener(javax.swing.Action),actionPropertyChanged(javax.swing.Action, java.lang.String)
getAction
public Action getAction()
Возвращает текущий установленный Action для этого источника ActionEvent, или null если Action не установлен.
- Возвращает:
Actionдля этого источникаActionEvent; илиnull- С тех пор:
- 1.3
- См. также:
-
Action,setAction(javax.swing.Action)
configurePropertiesFromAction
protected void configurePropertiesFromAction(Action a)
Устанавливает свойства этого комбо-бокса, чтобы они соответствовали свойствам в указанном Action. Дополнительные сведения о том, какие свойства устанавливаются, см. в Компоненты Swing, поддерживающие Action.
- Параметры:
-
a-Action, из которого получить свойства, илиnull - С тех пор:
- 1.3
- См. также:
-
Action,setAction(javax.swing.Action)
createActionPropertyChangeListener
protected PropertyChangeListener createActionPropertyChangeListener(Action a)
Создаёт и возвращает PropertyChangeListener, отвечающий за прослушивание изменений от указанного Action и обновление соответствующих свойств.
Предупреждение: Если вы наследуете этот метод, не создавайте анонимный внутренний класс. В противном случае срок существования комбо-бокса будет привязан к сроку существования Action.
- Параметры:
-
a- действие комбо-бокса - С тех пор:
- 1.3
- См. также:
-
Action,setAction(javax.swing.Action)
actionPropertyChanged
protected void actionPropertyChanged(Action action,
String propertyName) Обновляет состояние комбо-бокса в ответ на изменения свойств связанного действия. Этот метод вызывается из PropertyChangeListener , возвращаемого createActionPropertyChangeListener . Подклассы обычно не нуждаются в вызове этого метода. Подклассы, поддерживающие дополнительные свойства Action , должны переопределять этот метод и configurePropertiesFromAction .
Список свойств, которые устанавливает этот метод, см. в таблице Компоненты Swing, поддерживающие Action.
- Параметры:
-
action- действие, связанное с этим комбо-боксом -
propertyName- имя изменённого свойства - С тех пор:
- 1.6
- См. также:
-
Action,configurePropertiesFromAction(javax.swing.Action)
fireItemStateChanged
protected void fireItemStateChanged(ItemEvent e)
Уведомляет всех слушателей, которые зарегистрировали интерес к уведомлению об этом типе события.
- Параметры:
-
e- событие, представляющее интерес - См. также:
EventListenerList
fireActionEvent
protected void fireActionEvent()
Уведомляет всех слушателей, которые зарегистрировали интерес к уведомлению об этом типе события.
- См. также:
EventListenerList
selectedItemChanged
protected void selectedItemChanged()
Этот защищённый метод специфичен для реализации. Не обращаться напрямую и не переопределять.
getSelectedObjects
public Object[] getSelectedObjects()
Возвращает массив, содержащий выбранный элемент. Этот метод реализован для совместимости с ItemSelectable.
- Определено в:
-
getSelectedObjectsв интерфейсеItemSelectable - Возвращает:
- массив
Objects, содержащий один элемент - выбранный элемент
actionPerformed
public void actionPerformed(ActionEvent e)
Этот метод является публичным как следствие реализации. Не вызывать и не переопределять.
- Определено в:
-
actionPerformedв интерфейсеActionListener
contentsChanged
public void contentsChanged(ListDataEvent e)
Этот метод является публичным как следствие реализации. Не вызывать и не переопределять.
- Определено в:
-
contentsChangedв интерфейсеListDataListener - Параметры:
-
e-ListDataEvent, содержащий информацию об событии
intervalAdded
public void intervalAdded(ListDataEvent e)
Этот метод является публичным как следствие реализации. Не вызывать и не переопределять.
- Определено в:
-
intervalAddedв интерфейсеListDataListener - Параметры:
-
e-ListDataEvent, содержащий информацию об событии
intervalRemoved
public void intervalRemoved(ListDataEvent e)
Этот метод является публичным как следствие реализации. Не вызывать и не переопределять.
- Определено в:
-
intervalRemovedв интерфейсеListDataListener - Параметры:
-
e-ListDataEvent, содержащий информацию об событии
selectWithKeyChar
public boolean selectWithKeyChar(char keyChar)
Выбирает элемент списка, соответствующий указанному символу клавиатуры, и возвращает true, если такой элемент существует. В противном случае возвращает false.
- Параметры:
-
keyChar- символ, обычно это клавиша клавиатуры, нажатая пользователем
setEnabled
public void setEnabled(boolean b)
Включает комбо-бокс, чтобы можно было выбирать элементы. Когда комбо-бокс отключён, элементы выбрать нельзя, и значения нельзя ввести в его поле (если оно редактируемое).
- Переопределяет:
-
setEnabledв классеJComponent - Параметры:
-
b- логическое значение, где true включает компонент, а false отключает его - См. также:
-
Component.isEnabled(),Component.isLightweight()
configureEditor
public void configureEditor(ComboBoxEditor anEditor,
Object anItem) Инициализирует редактор указанным элементом.
- Параметры:
-
anEditor- элементComboBoxEditor, отображаемый в поле раскрывающегося списка и позволяющий его редактировать -
anItem- объект для отображения и редактирования в поле
processKeyEvent
public void processKeyEvent(KeyEvent e)
Обрабатывает KeyEvent, проверяя нажатие клавиши Tab. Если клавиша Tab обнаружена, всплывающее окно закрывается.
- Переопределяет:
-
processKeyEventв классеJComponent - Параметры:
-
e-KeyEvent, содержащий нажатую клавишу - См. также:
-
KeyEvent,KeyListener,KeyboardFocusManager,DefaultKeyboardFocusManager,Component.processEvent(java.awt.AWTEvent),Component.dispatchEvent(java.awt.AWTEvent),Component.addKeyListener(java.awt.event.KeyListener),Component.enableEvents(long),Component.isShowing()
processKeyBinding
protected boolean processKeyBinding(KeyStroke ks,
KeyEvent e,
int condition,
boolean pressed) Вызывается для обработки привязок клавиш для ks в результате нажатия KeyEvent e. Получает соответствующую InputMap, привязку, действие из ActionMap, а затем (если действие найдено и компонент активен) вызывает notifyAction для уведомления об этом действии.
- Переопределяет:
-
processKeyBindingв классеJComponent - Параметры:
-
ks- запрошеннаяKeyStroke -
e-KeyEvent -
condition- одно из следующих значений:- JComponent.WHEN_FOCUSED
- JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
- JComponent.WHEN_IN_FOCUSED_WINDOW
-
pressed- true, если нажата клавиша - Возвращает:
- true, если была привязка к действию, и действие было активировано
setKeySelectionManager
public void setKeySelectionManager(JComboBox.KeySelectionManager aManager)
Устанавливает объект, преобразующий символ клавиатуры в выбор элемента списка. Как правило, первым выбранным элементом становится элемент, начинающийся с совпадающего символа.
getKeySelectionManager
public JComboBox.KeySelectionManager getKeySelectionManager()
Возвращает менеджер выбора элементов списка по нажатию клавиш.
- Возвращает:
- используемый в настоящее время
KeySelectionManager
getItemCount
public int getItemCount()
Возвращает количество элементов в списке.
- Возвращает:
- целое число, равное количеству элементов в списке
getItemAt
public E getItemAt(int index)
Возвращает элемент списка по указанному индексу. Если index находится вне диапазона (меньше нуля или больше или равно размеру), возвращается null.
- Параметры:
-
index- целое число, указывающее позицию в списке, где первый элемент имеет индекс ноль - Возвращает:
- элемент в этой позиции списка; или
nullпри выходе за пределы диапазона
createDefaultKeySelectionManager
protected JComboBox.KeySelectionManager createDefaultKeySelectionManager()
Возвращает экземпляр менеджера выбора элементов по умолчанию.
- Возвращает:
- используемый в настоящее время
KeySelectionManagerсписка - См. также:
setKeySelectionManager(javax.swing.JComboBox.KeySelectionManager)
paramString
protected String paramString()
Возвращает строковое представление этого JComboBox. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут различаться между реализациями. Возвращаемая строка может быть пустой, но не null.
- Переопределяет:
-
paramStringв классеJComboBox - Возвращает:
- строковое представление этого
JComboBox
getAccessibleContext
public AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим JComboBox. Для раскрывающихся списков AccessibleContext принимает форму AccessibleJComboBox. Новый экземпляр AccessibleJComboBox создается при необходимости.
- Определено в:
-
getAccessibleContextв интерфейсеAccessible - Переопределяет:
-
getAccessibleContextв классеComponent - Возвращает:
- AccessibleJComboBox, который служит AccessibleContext этого JComboBox
© 1993, 2020, 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.