Класс JSpinner.DefaultEditor

Все реализованные интерфейсы:
ImageObserver, LayoutManager, MenuContainer, PropertyChangeListener, Serializable, EventListener, Accessible, ChangeListener
Непосредственные известные подклассы:
JSpinner.DateEditor, JSpinner.ListEditor, JSpinner.NumberEditor
Охватывающий класс:
JSpinner
public static class JSpinner.DefaultEditor
extends JPanel
implements ChangeListener, PropertyChangeListener, LayoutManager

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

Этот класс определяет метод dismiss, который удаляет редактируемые ChangeListener из JSpinner, частью которого он является. Метод setEditor знает о DefaultEditor.dismiss, поэтому если разработчик заменяет редактор, полученный от JSpinner.DefaultEditor, его ChangeListener подключение к JSpinner будет удалено. Однако после этого разработчик должен самостоятельно управлять своими слушателями редактора. Аналогично, если подкласс переопределяет createEditor, подклассу необходимо самостоятельно обрабатывать последующую замену редактора (с помощью setEditor). Мы ожидаем, что в большинстве случаев редактор, установленный с помощью setEditor или созданный путем переопределения createEditor, не будет заменен.

Этот класс является LayoutManager для своего единственного JFormattedTextField дочернего элемента. По умолчанию дочерний элемент просто центрируется с отступами родительского элемента.

С тех пор:
1.4
См. также:
Сериализованная форма

Вложенные классы

Вложенные классы/интерфейсы, объявленные в классе javax.swing.JPanel

JPanel.AccessibleJPanel

Вложенные классы/интерфейсы, объявленные в классе javax.swing.JComponent

JComponent.AccessibleJComponent

Вложенные классы/интерфейсы, объявленные в классе java.awt.Container

Container.AccessibleAWTContainer

Вложенные классы/интерфейсы, объявленные в классе java.awt.Component

Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy

Поля

Поля, объявленные в классе 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

Конструкторы

Конструктор Описание
DefaultEditor​(JSpinner spinner)

Создаёт компонент редактора для указанного JSpinner.

Методы

Модификатор и тип Метод Описание
void addLayoutComponent​(String name, Component child)

Этот LayoutManager метод ничего не делает.

void commitEdit()

Передаёт текущее редактируемое значение в SpinnerModel.

void dismiss​(JSpinner spinner)

Отключает редактор this от указанного JSpinner.

int getBaseline​(int width, int height)

Возвращает базовую линию.

Component.BaselineResizeBehavior getBaselineResizeBehavior()

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

JSpinner getSpinner()

Возвращает JSpinner предка этого редактора или null, если ни один из предков не является JSpinner.

JFormattedTextField getTextField()

Возвращает JFormattedTextField дочерний элемент этого редактора.

void layoutContainer​(Container parent)

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

Dimension minimumLayoutSize​(Container parent)

Возвращает минимальный размер первого (и единственного) дочернего элемента плюс размер отступов родительского элемента.

Dimension preferredLayoutSize​(Container parent)

Возвращает предпочтительный размер первого (и единственного) дочернего элемента плюс размер отступов родительского элемента.

void propertyChange​(PropertyChangeEvent e)

Вызывается JFormattedTextField PropertyChangeListener.

void removeLayoutComponent​(Component child)

Этот LayoutManager метод ничего не делает.

void stateChanged​(ChangeEvent e)

Этот метод вызывается при изменении состояния модели спиннера.

Методы, объявленные в классе javax.swing.JPanel

getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI

Методы, объявленные в классе javax.swing.JComponent

addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, 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, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, 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, 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, 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, hide, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Конструкторы

DefaultEditor

public DefaultEditor(JSpinner spinner)

Создаёт компонент-редактор для указанного JSpinner. Этот DefaultEditor является собственным менеджером компоновки и добавляется в список ChangeListener спиннера. Конструктор создаёт единственного JFormattedTextField потомка, инициализирует его значение текущим значением модели спиннера и добавляет его в this DefaultEditor.

Параметры:
spinner - спиннер, модель которого this редактор будет отслеживать
См. также:
getTextField(), JSpinner.addChangeListener(javax.swing.event.ChangeListener)

Методы

dismiss

public void dismiss(JSpinner spinner)

Отключает this редактор от указанного JSpinner. По умолчанию этот метод удаляет себя из списка ChangeListener спиннера.

Параметры:
spinner - JSpinner для отключения этого редактора; тот же спиннер, что и был передан в конструктор.

getSpinner

public JSpinner getSpinner()

Возвращает JSpinner предок этого редактора или null если ни один из предков не является JSpinner. Обычно родитель редактора является JSpinner, однако подклассы JSpinner могут переопределять метод createEditor и вставлять один или несколько контейнеров между JSpinner и его редактором.

Возвращает:
JSpinner предок; null если ни один из предков не является JSpinner
См. также:
JSpinner.createEditor(javax.swing.SpinnerModel)

getTextField

public JFormattedTextField getTextField()

Возвращает JFormattedTextField потомка этого редактора. По умолчанию текстовое поле является первым и единственным потомком редактора.

Возвращает:
текстовое JFormattedTextField, предоставляющее пользователю доступ к значению SpinnerDateModel's.
См. также:
getSpinner(), JSpinner.getModel()

stateChanged

public void stateChanged(ChangeEvent e)

Этот метод вызывается при изменении состояния модели спиннера. Он устанавливает value текстового поля в текущее значение модели спиннера.

Определено в:
stateChanged в интерфейсе ChangeListener
Параметры:
e - ChangeEvent источником которого является JSpinner чья модель была изменена.
См. также:
getTextField(), JSpinner.getValue()

propertyChange

public void propertyChange(PropertyChangeEvent e)

Вызывается JFormattedTextField PropertyChangeListener. При изменении свойства "value", что подразумевает ввод пользователем нового числа, мы устанавливаем значение модели спиннера.

Этот класс игнорирует PropertyChangeEvents источником которых не является JFormattedTextField, поэтому подклассы могут безопасно использовать this DefaultEditor как PropertyChangeListener на других объектах.

Определено в:
propertyChange в интерфейсе PropertyChangeListener
Параметры:
e - PropertyChangeEvent источником которого является JFormattedTextField созданный этим классом.
См. также:
getTextField()

addLayoutComponent

public void addLayoutComponent(String name,
                               Component child)

Этот LayoutManager метод ничего не делает. Мы управляем только одним потомком и не поддерживаем ограничения компоновки.

Определено в:
addLayoutComponent в интерфейсе LayoutManager
Параметры:
name - игнорируется
child - игнорируется

removeLayoutComponent

public void removeLayoutComponent(Component child)

Этот LayoutManager метод ничего не делает. Состояния по каждому потомку не поддерживаются.

Определено в:
removeLayoutComponent в интерфейсе LayoutManager
Параметры:
child - игнорируется

preferredLayoutSize

public Dimension preferredLayoutSize(Container parent)

Возвращает предпочтительный размер первого (и единственного) потомка плюс размеры отступов родителя.

Определено в:
preferredLayoutSize в интерфейсе LayoutManager
Параметры:
parent - контейнер, управляющий компоновкой
Возвращает:
предпочтительные размеры для размещения подкомпонентов указанного контейнера.
См. также:
LayoutManager.minimumLayoutSize(java.awt.Container)

minimumLayoutSize

public Dimension minimumLayoutSize(Container parent)

Возвращает минимальный размер первого (и единственного) потомка плюс размеры отступов родителя.

Определено в:
minimumLayoutSize в интерфейсе LayoutManager
Параметры:
parent - контейнер, управляющий компоновкой
Возвращает:
минимальные размеры, необходимые для размещения подкомпонентов указанного контейнера.
См. также:
LayoutManager.preferredLayoutSize(java.awt.Container)

layoutContainer

public void layoutContainer(Container parent)

Изменяет размер единственного потомка для заполнения области внутри отступов родителя.

Определено в:
layoutContainer в интерфейсе LayoutManager
Параметры:
parent - контейнер, подлежащий компоновке

commitEdit

public void commitEdit()
                throws ParseException

Переносит текущее изменённое значение в SpinnerModel.

Реализация по умолчанию вызывает commitEdit для JFormattedTextField.

Исключения:
ParseException - если изменённое значение не является корректным

getBaseline

public int getBaseline(int width,
                       int height)

Возвращает линию базового отступа.

Переопределяет:
getBaseline в классе JComponent
Параметры:
width - ширина для получения базовой линии
height - высота для получения базовой линии
Возвращает:
базовую линию или < 0, указывающую на отсутствие разумной базовой линии
Исключения:
IllegalArgumentException - если ширина или высота < 0
С:
1.6
См. также:
JComponent.getBaseline(int,int), JComponent.getBaselineResizeBehavior()

getBaselineResizeBehavior

public Component.BaselineResizeBehavior getBaselineResizeBehavior()

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

Переопределяет:
getBaselineResizeBehavior в классе JComponent
Возвращает:
перечисление, указывающее, как меняется базовая линия при изменении размера компонента
Исключения:
NullPointerException
С:
1.6
См. также:
JComponent.getBaseline(int, int)

© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/JSpinner.DefaultEditor.html

Spec-Zone .ru
спецификации, руководства, описания, API