|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
javax.swing.JSpinner.DefaultEditor
public static class JSpinner.DefaultEditor
一个针对非常特殊编辑器的简单基类,该类在 JFormattedTextField 中显示模型的当前值的只读视图。子类可以配置 JFormattedTextField 以创建适合其支持的模型类型的编辑器,并且子类可能需要重写保持模型和文本字段同步的 stateChanged 和 propertyChanged 方法。
此类定义了一个 dismiss 方法,可从 JSpinner 移除作为其一部分的编辑器 ChangeListener。setEditor 方法知道 DefaultEditor.dismiss,因此如果开发人员替换了一个从 JSpinner.DefaultEditor 派生的编辑器,将会移除返回 JSpinner 的 ChangeListener 连接。尽管如此,也会等到开发者管理其编辑器侦听器才移除。类似地,如果一个子类重写了 createEditor,子类也会等到处理了后续替换掉(通过 setEditor)的编辑器之后才移除。我们期望在大多数情况下不以任何形式替换,包括通过 setEditor 安装或者通过重写 createEditor 创建编辑器。
此类是针对其单一 JFormattedTextField 子类的 LayoutManager。默认情况下,子级正好处于父 insets 的中间。
| 嵌套类摘要 |
|---|
| 从类 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 继承的字段 |
|---|
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW |
| 从类 java.awt.Component 继承的字段 |
|---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
| 从接口 java.awt.image.ImageObserver 继承的字段 |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| 构造方法摘要 | |
|---|---|
JSpinner.DefaultEditor(JSpinner spinner)
构造一个针对指定 JSpinner 的编辑器组件。 |
|
| 方法摘要 | |
|---|---|
void |
addLayoutComponent(String name,
Component child)
此 LayoutManager 方法不执行任何操作。 |
void |
commitEdit()
将当前编辑值赋给 SpinnerModel。 |
void |
dismiss(JSpinner spinner)
将 此编辑器从指定的 JSpinner 断开连接。 |
int |
getBaseline(int width,
int height)
返回基线。 |
Component.BaselineResizeBehavior |
getBaselineResizeBehavior()
返回一个枚举,它指示组件的基线如何随大小的改变而发生更改。 |
JSpinner |
getSpinner()
如果此编辑器的 JSpinner 祖先,如果祖先都不为 JSpinner,则返回 null。 |
JFormattedTextField |
getTextField()
返回此编辑器的子 JFormattedTextField。 |
void |
layoutContainer(Container parent)
调整一个(并且是唯一)子级的大小,以完全填充父 insets 中的区域。 |
Dimension |
minimumLayoutSize(Container parent)
返回第一个(并且是唯一)的子级最小大小与其父 insets 的大小和。 |
Dimension |
preferredLayoutSize(Container parent)
返回第一个(并且是唯一)子级的首选大小与其父 insets 的大小和。 |
void |
propertyChange(PropertyChangeEvent e)
由 JFormattedTextField 的 PropertyChangeListener 调用。 |
void |
removeLayoutComponent(Component child)
此 LayoutManager 方法不执行任何操作。 |
void |
stateChanged(ChangeEvent e)
当 spinner 的模型状态更改时调用此方法。 |
| 从类 javax.swing.JPanel 继承的方法 |
|---|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| 构造方法详细信息 |
|---|
public JSpinner.DefaultEditor(JSpinner spinner)
JSpinner 的编辑器组件。此 DefaultEditor 是其自身的布局管理器,并且它已被添加到 spinner 的 ChangeListener 列表中。此构造方法创建了单一的子 JFormattedTextField,其值被初始化为 spinner 模型的当前值,并且将其添加到了此 DefaultEditor 中。
spinner - 此编辑器将要监视其模型的 spinnergetTextField(),
JSpinner.addChangeListener(javax.swing.event.ChangeListener)| 方法详细信息 |
|---|
public void dismiss(JSpinner spinner)
此编辑器从指定的 JSpinner 断开连接。默认情况下,此方法将从 spinner 的 ChangeListener 列表中移除其自身。
spinner - 要从其断开编辑器连接的 JSpinner;与构造方法传入的是同一个 spinner。public JSpinner getSpinner()
JSpinner 祖先,如果祖先都不为 JSpinner,则返回 null。 通常编辑器的父级是一个 JSpinner,尽管 JSpinner 的子类可能重写 createEditor 方法和在 JSpinner 及其编辑器之间插入一个到多个容器。
JSpinner 祖先;如果祖先都不为 JSpinner,则返回 nullJSpinner.createEditor(javax.swing.SpinnerModel)public JFormattedTextField getTextField()
JFormattedTextField。默认情况下,文本字段是编辑器的第一个也是唯一的一个子级。
SpinnerDateModel 值的 JFormattedTextField。getSpinner(),
JSpinner.getModel()public void stateChanged(ChangeEvent e)
value 设置成 spinner 模型的当前值。
ChangeListener 中的 stateChangede - 其源为模型已更改的 JSpinner 的 ChangeEvent。getTextField(),
JSpinner.getValue()public void propertyChange(PropertyChangeEvent e)
JFormattedTextField 的 PropertyChangeListener 调用。当 "value" 属性更改时,这就意味着用户键入了一个新的数字,我们就设置 spinner 模型的值。
此类忽略其源不是 JFormattedTextField 的 PropertyChangeEvents,因此子类能安全地使此 DefaultEditor 成为其他对象的 PropertyChangeListener。
PropertyChangeListener 中的 propertyChangee - 此类创建的其源为 JFormattedTextField 的 PropertyChangeEvent。getTextField()
public void addLayoutComponent(String name,
Component child)
LayoutManager 方法不执行任何操作。我们仅管理单个子级并且不支持布局约束。
LayoutManager 中的 addLayoutComponentname - 忽略child - 忽略public void removeLayoutComponent(Component child)
LayoutManager 方法不执行任何操作。没有任何每子级的状态。
LayoutManager 中的 removeLayoutComponentchild - 忽略public Dimension preferredLayoutSize(Container parent)
LayoutManager 中的 preferredLayoutSizeparent - 管理布局的容器
LayoutManager.minimumLayoutSize(java.awt.Container)public Dimension minimumLayoutSize(Container parent)
LayoutManager 中的 minimumLayoutSizeparent - 管理布局的 Container
public void layoutContainer(Container parent)
LayoutManager 中的 layoutContainerparent - 要布置的容器
public void commitEdit()
throws ParseException
SpinnerModel。
默认的实现调用 JFormattedTextField 上的 commitEdit 方法。
ParseException - 如果编辑值不合法
public int getBaseline(int width,
int height)
JComponent 中的 getBaselinewidth - 适合基线的宽度height - 适合基线的高度
IllegalArgumentException - 如果 width 或 height < 0JComponent.getBaseline(int,int),
JComponent.getBaselineResizeBehavior()public Component.BaselineResizeBehavior getBaselineResizeBehavior()
JComponent 中的 getBaselineResizeBehaviorNullPointerExceptionJComponent.getBaseline(int, int)
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。