- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.ToolBarUI
-
- javax.swing.plaf.basic.BasicToolBarUI
-
- All Implemented Interfaces:
-
SwingConstants
- 已知直接子类:
-
MetalToolBarUI
,SynthToolBarUI
public class BasicToolBarUI extends ToolBarUI implements SwingConstants
ToolBarUI的基本L&F实现。 这个实现是一个“组合的”视图/控制器。
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 class
BasicToolBarUI.DockingListener
这个类应该被视为一个“受保护”的内部类。protected class
BasicToolBarUI.DragWindow
在拖动JToolBar
期间出现的窗口。protected class
BasicToolBarUI.FrameListener
该类监听窗口事件。protected class
BasicToolBarUI.PropertyListener
该类监听属性更改的事件。protected class
BasicToolBarUI.ToolBarContListener
该类侦听组件事件。protected class
BasicToolBarUI.ToolBarFocusListener
班级聆听焦点事件。
-
Field Summary
Fields Modifier and Type Field 描述 protected String
constraintBeforeFloating
浮动前的布局。protected Color
dockingBorderColor
对接边框的颜色。protected Color
dockingColor
对接边框的背景颜色。protected MouseInputListener
dockingListener
一个MouseInputListener
的实例。protected KeyStroke
downKey
已过时。从Java 2平台v1.3开始。protected BasicToolBarUI.DragWindow
dragWindow
实例DragWindow
。protected Color
floatingBorderColor
不对接边框的颜色。protected Color
floatingColor
不对接边框的背景颜色。protected int
focusedCompIndex
聚焦组件的索引。protected KeyStroke
leftKey
已过时。从Java 2平台v1.3开始。protected PropertyChangeListener
propertyListener
一个PropertyChangeListener
的实例。protected KeyStroke
rightKey
已过时。从Java 2平台v1.3开始。protected JToolBar
toolBar
实例JToolBar
。protected ContainerListener
toolBarContListener
一个ContainerListener
的实例。protected FocusListener
toolBarFocusListener
一个FocusListener
的实例。protected KeyStroke
upKey
已过时。从Java 2平台v1.3开始。-
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
-
-
构造方法摘要
构造方法 Constructor 描述 BasicToolBarUI()
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 boolean
canDock(Component c, Point p)
如果JToolBar
可以在给定的位置停靠,则返回true
。protected MouseInputListener
createDockingListener()
返回一个MouseInputListener
的实例。protected BasicToolBarUI.DragWindow
createDragWindow(JToolBar toolbar)
返回一个DragWindow
的实例。protected JFrame
createFloatingFrame(JToolBar toolbar)
不再使用,使用BasicToolBarUI.createFloatingWindow(JToolBar)protected RootPaneContainer
createFloatingWindow(JToolBar toolbar)
在从其容器中拖出工具栏后,创建一个包含工具栏的窗口protected WindowListener
createFrameListener()
构造一个新的实例WindowListener
。protected Border
createNonRolloverBorder()
创建工具栏组件的非滚动边框。protected PropertyChangeListener
createPropertyListener()
返回一个PropertyChangeListener
的实例。protected Border
createRolloverBorder()
为工具栏组件创建滚动边框。protected ContainerListener
createToolBarContListener()
返回一个ContainerListener
的实例。protected FocusListener
createToolBarFocusListener()
返回一个FocusListener
的实例。static ComponentUI
createUI(JComponent c)
构造一个新的实例BasicToolBarUI
。protected void
dragTo(Point position, Point origin)
该方法是用来拖动DragWindow
在JToolBar
被拖动。protected void
floatAt(Point position, Point origin)
在拖动结束时调用该方法将框架放置在其原始位置或其浮动框架中。Color
getDockingColor()
获取在停靠区域上显示的颜色Color
getFloatingColor()
获取在浮动区域上显示的颜色protected Border
getNonRolloverBorder(AbstractButton b)
返回按钮的非滚动边框。protected Border
getRolloverBorder(AbstractButton b)
返回按钮的翻转边框。protected void
installComponents()
注册组件。protected void
installDefaults()
安装默认属性。protected void
installKeyboardActions()
注册键盘操作。protected void
installListeners()
注册听众。protected void
installNonRolloverBorders(JComponent c)
在JComponent的所有子组件上安装非滚动边框。protected void
installNormalBorders(JComponent c)
在JComponent的所有子组件上安装正常边界。protected void
installRolloverBorders(JComponent c)
在JComponent的所有子组件上安装滚动边框。void
installUI(JComponent c)
适当地配置指定的组件的外观和感觉。boolean
isFloating()
如果JToolBar
是浮动的,则返回true
boolean
isRolloverBorders()
返回一个标志,以确定是否启用滚动按钮边框。protected void
navigateFocusedComp(int direction)
浏览关注的组件。protected void
paintDragWindow(Graphics g)
绘制用于拖动的窗口的内容。protected void
setBorderToNonRollover(Component c)
将组件的边框设置为具有由createNonRolloverBorder()
方法创建的非滚动边框。protected void
setBorderToNormal(Component c)
将组件的边框设置为具有正常边框。protected void
setBorderToRollover(Component c)
将组件的边框设置为具有createRolloverBorder()
方法创建的翻转边框。void
setDockingColor(Color c)
设置在停靠区域上显示的颜色void
setFloating(boolean b, Point p)
设置浮动属性。void
setFloatingColor(Color c)
设置在浮动区域上显示的颜色void
setFloatingLocation(int x, int y)
设置浮动位置。void
setOrientation(int orientation)
设置工具栏的方向。void
setRolloverBorders(boolean rollover)
设置在工具栏上启用滚动边框的标志,并且还将根据标志的状态安装适当的边框。protected void
uninstallComponents()
取消注册组件。protected void
uninstallDefaults()
卸载默认属性。protected void
uninstallKeyboardActions()
取消注册键盘操作。protected void
uninstallListeners()
取消注册听众。void
uninstallUI(JComponent c)
在installUI
反转在指定组件上完成的配置。-
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, paint, update
-
-
-
-
字段详细信息
-
toolBar
protected JToolBar toolBar
实例JToolBar
。
-
dragWindow
protected BasicToolBarUI.DragWindow dragWindow
实例DragWindow
。
-
focusedCompIndex
protected int focusedCompIndex
聚焦组件的索引。
-
dockingColor
protected Color dockingColor
对接边框的背景颜色。
-
floatingColor
protected Color floatingColor
不对接边框的背景颜色。
-
dockingBorderColor
protected Color dockingBorderColor
对接边框的颜色。
-
floatingBorderColor
protected Color floatingBorderColor
不对接边框的颜色。
-
dockingListener
protected MouseInputListener dockingListener
一个MouseInputListener
的实例。
-
propertyListener
protected PropertyChangeListener propertyListener
一个PropertyChangeListener
的实例。
-
toolBarContListener
protected ContainerListener toolBarContListener
一个ContainerListener
的实例。
-
toolBarFocusListener
protected FocusListener toolBarFocusListener
一个FocusListener
。
-
constraintBeforeFloating
protected String constraintBeforeFloating
浮动前的布局。
-
upKey
@Deprecated protected KeyStroke upKey
已过时。 从Java 2平台v1.3开始。从Java 2平台v1.3起,这个以前未记录的字段已不再使用了。 密钥绑定现在由LookAndFeel定义,请参考密钥绑定规范了解更多详细信息。
-
downKey
@Deprecated protected KeyStroke downKey
已过时。 从Java 2平台v1.3开始。从Java 2平台v1.3起,这个以前未记录的字段已不再使用了。 密钥绑定现在由LookAndFeel定义,请参考密钥绑定规范了解更多详细信息。
-
leftKey
@Deprecated protected KeyStroke leftKey
已过时。 从Java 2平台v1.3开始。从Java 2平台v1.3起,这个以前未记录的字段已不再使用了。 密钥绑定现在由LookAndFeel定义,请参考密钥绑定规范了解更多详细信息。
-
rightKey
@Deprecated protected KeyStroke rightKey
已过时。 从Java 2平台v1.3开始。从Java 2平台v1.3起,这个以前未记录的字段已不再使用了。 密钥绑定现在由LookAndFeel定义,请参考密钥绑定规范了解更多详细信息。
-
-
方法详细信息
-
createUI
public static ComponentUI createUI(JComponent c)
构造一个新的实例BasicToolBarUI
。- 参数
-
c
- 一个组件 - 结果
-
一个新的例子
BasicToolBarUI
-
installUI
public void installUI(JComponent c)
描述从类复制:ComponentUI
适当地配置指定的组件的外观和感觉。 当正在安装ComponentUI
实例作为指定组件上的UI委托时,将调用此方法。 该方法应该完全配置组件的外观,包括以下内容:- 为组件上的颜色,字体,边框,图标,不透明度等安装默认属性值。 只要有可能,由客户端程序初始化的属性值不应该被重写。
- 如有必要,请在组件上安装
LayoutManager
。 - 创建/添加任何所需的子组件到组件。
- 在组件上创建/安装事件监听器。
- 在组件上创建/安装
PropertyChangeListener
,以便适当地检测和响应组件属性更改。 - 在组件上安装键盘UI(助记符,遍历等)。
- 初始化任何适当的实例数据。
- 重写:
-
installUI
在ComponentUI
- 参数
-
c
- 正在安装此UIc
的组件 - 另请参见:
-
ComponentUI.uninstallUI(javax.swing.JComponent)
,JComponent.setUI(javax.swing.plaf.ComponentUI)
,JComponent.updateUI()
-
uninstallUI
public void uninstallUI(JComponent c)
描述从类复制:ComponentUI
在installUI
反转在指定组件上完成的配置。 当该UIComponent
实例作为指定组件的UI委托被删除时,将调用此方法。 该方法应该撤销在installUI
执行的配置,小心使JComponent
实例处于干净状态(无外部侦听器,外观特定属性对象等)。 这应该包括以下内容:- 从组件中删除任何UI集边框。
- 删除组件上的任何UI集布局管理器。
- 从组件中删除任何添加了UI的子组件。
- 从组件中删除任何UI添加的事件/属性侦听器。
- 从组件中删除任何UI安装的键盘UI。
- 对任何分配的实例数据对象进行空白以允许GC。
- 重写:
-
uninstallUI
在ComponentUI
- 参数
-
c
- 从中删除此UIc
的组件; 这个参数经常被忽略,但如果UI对象是无状态的并且被多个组件共享,则可能会被使用 - 另请参见:
-
ComponentUI.installUI(javax.swing.JComponent)
,JComponent.updateUI()
-
installDefaults
protected void installDefaults()
安装默认属性。
-
uninstallDefaults
protected void uninstallDefaults()
卸载默认属性。
-
installComponents
protected void installComponents()
注册组件。
-
uninstallComponents
protected void uninstallComponents()
取消注册组件。
-
installListeners
protected void installListeners()
注册听众。
-
uninstallListeners
protected void uninstallListeners()
取消注册听众。
-
installKeyboardActions
protected void installKeyboardActions()
注册键盘操作。
-
uninstallKeyboardActions
protected void uninstallKeyboardActions()
取消注册键盘操作。
-
navigateFocusedComp
protected void navigateFocusedComp(int direction)
浏览关注的组件。- 参数
-
direction
- 一个方向
-
createRolloverBorder
protected Border createRolloverBorder()
为工具栏组件创建滚动边框。 如果启用滚动边框,将会安装翻转边框。覆盖此方法以提供备用的翻转边框。
- 结果
- 工具栏组件的翻转边框
- 从以下版本开始:
- 1.4
-
createNonRolloverBorder
protected Border createNonRolloverBorder()
创建工具栏组件的非滚动边框。 如果未启用滚动边框,则此边框将作为添加到工具栏的组件的边框进行安装。覆盖此方法以提供备用的翻转边框。
- 结果
- 工具栏组件的非滚动边框
- 从以下版本开始:
- 1.4
-
createFloatingFrame
protected JFrame createFloatingFrame(JToolBar toolbar)
不再使用,使用BasicToolBarUI.createFloatingWindow(JToolBar)- 参数
-
toolbar
-实例JToolBar
- 结果
-
一个
JFrame
的实例 - 另请参见:
-
createFloatingWindow(javax.swing.JToolBar)
-
createFloatingWindow
protected RootPaneContainer createFloatingWindow(JToolBar toolbar)
在从其容器中拖出工具栏后,创建一个包含工具栏的窗口- 参数
-
toolbar
-实例JToolBar
- 结果
-
一个
RootPaneContainer
对象,包含工具栏 - 从以下版本开始:
- 1.4
-
createDragWindow
protected BasicToolBarUI.DragWindow createDragWindow(JToolBar toolbar)
返回一个DragWindow
的实例。- 参数
-
toolbar
-实例JToolBar
- 结果
-
一个
DragWindow
-
isRolloverBorders
public boolean isRolloverBorders()
返回一个标志,以确定是否启用滚动按钮边框。- 结果
- 如果启用滚动边框,则为true; 否则为假
- 从以下版本开始:
- 1.4
- 另请参见:
-
setRolloverBorders(boolean)
-
setRolloverBorders
public void setRolloverBorders(boolean rollover)
设置在工具栏上启用滚动边框的标志,并且还将根据标志的状态安装适当的边框。- 参数
-
rollover
- 如果为true,则安装滚动边框。 否则将安装非滚动边框 - 从以下版本开始:
- 1.4
- 另请参见:
-
isRolloverBorders()
-
installRolloverBorders
protected void installRolloverBorders(JComponent c)
在JComponent的所有子组件上安装滚动边框。这是为每个子组件调用
setBorderToRollover
的便利方法。- 参数
-
c
- 容纳子组件的容器(通常是JToolBar) - 从以下版本开始:
- 1.4
- 另请参见:
-
setBorderToRollover(java.awt.Component)
-
installNonRolloverBorders
protected void installNonRolloverBorders(JComponent c)
在JComponent的所有子组件上安装非滚动边框。 非滚动边框是子组件在工具栏中时安装的边框。这是为每个子组件调用
setBorderToNonRollover
的便利方法。- 参数
-
c
- 容纳子组件的容器(通常是JToolBar) - 从以下版本开始:
- 1.4
- 另请参见:
-
setBorderToNonRollover(java.awt.Component)
-
installNormalBorders
protected void installNormalBorders(JComponent c)
在JComponent的所有子组件上安装正常边界。 正常边框是在子组件添加到工具栏之前安装的原始边框。这是一个方便的方法来调用每个子组件的
setBorderNormal
。- 参数
-
c
- 容纳子组件的容器(通常是JToolBar) - 从以下版本开始:
- 1.4
- 另请参见:
-
setBorderToNonRollover(java.awt.Component)
-
setBorderToRollover
protected void setBorderToRollover(Component c)
将组件的边框设置为具有由createRolloverBorder()
方法创建的滚动边框。- 参数
-
c
- 将安装滚动边框的组件 - 从以下版本开始:
- 1.4
- 另请参见:
-
createRolloverBorder()
-
getRolloverBorder
protected Border getRolloverBorder(AbstractButton b)
返回按钮的翻转边框。- 参数
-
b
- 计算滚动边框的按钮 - 结果
- 翻转边界
- 从以下版本开始:
- 1.6
- 另请参见:
-
setBorderToRollover(java.awt.Component)
-
setBorderToNonRollover
protected void setBorderToNonRollover(Component c)
将组件的边框设置为具有由createNonRolloverBorder()
方法创建的非滚动边框。- 参数
-
c
- 将安装非滚动边框的组件 - 从以下版本开始:
- 1.4
- 另请参见:
-
createNonRolloverBorder()
-
getNonRolloverBorder
protected Border getNonRolloverBorder(AbstractButton b)
返回按钮的非滚动边框。- 参数
-
b
- 用于计算非滚动边框的按钮 - 结果
- 非滚动边界
- 从以下版本开始:
- 1.6
- 另请参见:
-
setBorderToNonRollover(java.awt.Component)
-
setBorderToNormal
protected void setBorderToNormal(Component c)
将组件的边框设置为具有正常边框。 正常边框是在子组件添加到工具栏之前安装的原始边框。- 参数
-
c
- 将重新安装正常边框的组件 - 从以下版本开始:
- 1.4
- 另请参见:
-
createNonRolloverBorder()
-
setFloatingLocation
public void setFloatingLocation(int x, int y)
设置浮动位置。- 参数
-
x
- 一个X坐标 -
y
- 一个Y坐标
-
isFloating
public boolean isFloating()
如果JToolBar
是浮动的,则返回true
- 结果
-
true
如果JToolBar
是浮动的
-
setFloating
public void setFloating(boolean b, Point p)
设置浮动属性。- 参数
-
b
-true
如果JToolBar
是浮动的 -
p
- 位置
-
setOrientation
public void setOrientation(int orientation)
设置工具栏的方向。- 参数
-
orientation
- 新方向
-
getDockingColor
public Color getDockingColor()
获取在停靠区域上显示的颜色- 结果
- 在对接区域显示的颜色
-
setDockingColor
public void setDockingColor(Color c)
设置在停靠区域上显示的颜色- 参数
-
c
- 新的颜色
-
getFloatingColor
public Color getFloatingColor()
获取在浮动区域上显示的颜色- 结果
- 在浮动区域上显示的颜色
-
setFloatingColor
public void setFloatingColor(Color c)
设置在浮动区域上显示的颜色- 参数
-
c
- 新的颜色
-
canDock
public boolean canDock(Component c, Point p)
如果JToolBar
可以在给定的位置停靠,则返回true
。- 参数
-
c
- 一个组件 -
p
- 一个职位 - 结果
-
true
如果JToolBar
可以JToolBar
在给定的位置
-
dragTo
protected void dragTo(Point position, Point origin)
该方法是用来拖动DragWindow
在JToolBar
被拖动。- 参数
-
position
- 相对于JTollBar
位置 -
origin
- 拖动之前的屏幕位置为JToolBar
-
floatAt
protected void floatAt(Point position, Point origin)
在拖动结束时调用该方法将框架放置在其原始位置或其浮动框架中。- 参数
-
position
- 相对于JTollBar
位置 -
origin
- 拖动之前的屏幕位置为JToolBar
-
createToolBarContListener
protected ContainerListener createToolBarContListener()
返回一个ContainerListener
的实例。- 结果
-
一个
ContainerListener
-
createToolBarFocusListener
protected FocusListener createToolBarFocusListener()
返回一个FocusListener
的实例。- 结果
-
一个
FocusListener
-
createPropertyListener
protected PropertyChangeListener createPropertyListener()
返回一个PropertyChangeListener
的实例。- 结果
-
一个
PropertyChangeListener
的实例
-
createDockingListener
protected MouseInputListener createDockingListener()
返回一个MouseInputListener
的实例。- 结果
-
一个
MouseInputListener
-
createFrameListener
protected WindowListener createFrameListener()
构造一个新的实例WindowListener
。- 结果
-
一个新的实例
WindowListener
-
paintDragWindow
protected void paintDragWindow(Graphics g)
绘制用于拖动的窗口的内容。- 参数
-
g
- 绘图的图形。 - 异常
-
NullPointerException
- 为g
为空 - 从以下版本开始:
- 1.5
-
-