Класс 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, 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, hide, 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, 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 Конструкторы
DefaultEditor
public DefaultEditor(JSpinner spinner)
Создает компонент редактора для указанного JSpinner. Этот компонент является собственным менеджером макета и добавляется в список ChangeListener спиннера. Конструктор создаёт единственного дочернего элемента, инициализирует его значение текущим значением модели спиннера и добавляет его к this DefaultEditor.
- Параметры:
-
spinner- спиннер, модель которогоthisотслеживает редактор - См. также:
-
getTextField(),JSpinner.addChangeListener(javax.swing.event.ChangeListener)
Методы
dismiss
public void dismiss(JSpinner spinner)
Отсоединяет редактор this от указанного JSpinner. По умолчанию этот метод удаляет себя из списка ChangeListener спиннера.
- Параметры:
-
spinner- спиннер, от которого необходимо отсоединить редактор; тот же спиннер, что и переданный в конструктор.
getSpinner
public JSpinner getSpinner()
Возвращает родительский элемент JSpinner этого редактора или null, если ни один из родительских элементов не является JSpinner. Обычно родителем редактора является JSpinner, однако подклассы JSpinner могут переопределить метод createEditor и вставить один или несколько контейнеров между JSpinner и редактором.
- Возвращает:
-
JSpinnerродительский элемент;nullесли ни один из родительских элементов не являетсяJSpinner - См. также:
JSpinner.createEditor(javax.swing.SpinnerModel)
getTextField
public JFormattedTextField getTextField()
Возвращает дочерний элемент 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.