Класс JSpinner.DefaultEditor
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- javax.swing.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) | Создаёт компонент редактора для указанного |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void | addLayoutComponent(String name,
Component child) | Этот |
void | commitEdit() | Передаёт текущее редактируемое значение в |
void | dismiss(JSpinner spinner) | Отключает редактор |
int | getBaseline(int width,
int height) | Возвращает базовую линию. |
Component.BaselineResizeBehavior | getBaselineResizeBehavior() | Возвращает перечисление, указывающее, как изменяется базовая линия компонента при изменении размера. |
JSpinner | getSpinner() | Возвращает |
JFormattedTextField | getTextField() | Возвращает |
void | layoutContainer(Container parent) | Изменяет размер единственного дочернего элемента, чтобы он полностью заполнял область внутри отступов родительского элемента. |
Dimension | minimumLayoutSize(Container parent) | Возвращает минимальный размер первого (и единственного) дочернего элемента плюс размер отступов родительского элемента. |
Dimension | preferredLayoutSize(Container parent) | Возвращает предпочтительный размер первого (и единственного) дочернего элемента плюс размер отступов родительского элемента. |
void | propertyChange(PropertyChangeEvent e) | Вызывается |
void | removeLayoutComponent(Component child) | Этот |
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