- 所有已实现的接口:
-
SwingConstants
- 自1.2版本起:
- 1.2
-
Field Summary
Fields declared in 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
-
Method Summary
Modifier and TypeMethodDescriptionstatic Rectangle
在指定组件的内部绘制区域中存储位置和大小,并返回r
。static Rectangle[]
computeDifference
(Rectangle rectA, Rectangle rectB) 方便地返回一个代表rectA
中不与rectB
重叠的区域的矩形数组。static Rectangle
computeIntersection
(int x, int y, int width, int height, Rectangle dest) 方便地计算两个矩形的交集,而不分配新的矩形。static int
computeStringWidth
(FontMetrics fm, String str) 使用具有指定“度量”(大小)的字体计算字符串的宽度。static Rectangle
computeUnion
(int x, int y, int width, int height, Rectangle dest) 方便的方法,计算两个矩形的并集,而不分配新的矩形。static MouseEvent
convertMouseEvent
(Component source, MouseEvent sourceEvent, Component destination) 返回一个类似于sourceEvent
的MouseEvent,但其x和y成员已转换为destination
的坐标系。static Point
convertPoint
(Component source, int x, int y, Component destination) 将(x,y)
点从source
坐标系转换为destination
坐标系。static Point
convertPoint
(Component source, Point aPoint, Component destination) 将aPoint
从source
坐标系转换为destination
坐标系。static void
将点从屏幕坐标转换为组件的坐标系。static void
将点从组件的坐标系转换为屏幕坐标。static Rectangle
convertRectangle
(Component source, Rectangle aRectangle, Component destination) 将aRectangle
从source
坐标系转换为destination
坐标系。static Component
已弃用。static Accessible
getAccessibleAt
(Component c, Point p) 返回包含在本地坐标Point
处的Accessible
子级(如果存在)。static Accessible
getAccessibleChild
(Component c, int i) 返回对象的第n个Accessible子级。static int
返回对象中可访问的子级数量。static int
获取此对象在其可访问父级中的索引。static AccessibleStateSet
获取此对象的状态。static Container
getAncestorNamed
(String name, Component comp) 在组件层次结构中向上搜索comp
的便捷方法,并返回找到的第一个name
对象。static Container
getAncestorOfClass
(Class<?> c, Component comp) 在组件层次结构中向上搜索comp
的便捷方法,并返回找到的第一个c
类对象。static Component
getDeepestComponentAt
(Component parent, int x, int y) 返回包含位置x
,y
的parent
的最深层可见后代组件。static Rectangle
getLocalBounds
(Component aComponent) 返回组件aComponent
的矩形(0,0,bounds.width,bounds.height)。static Component
返回当前组件树的根组件。static JRootPane
如果c是JRootPane的后代,则返回其JRootPane祖先。static ActionMap
getUIActionMap
(JComponent component) 返回组件component
中由UI提供的ActionMap。static InputMap
getUIInputMap
(JComponent component, int condition) 返回组件component
中由UI提供的条件condition
的InputMap。static Container
getUnwrappedParent
(Component component) 返回component
的第一个不是JLayer
实例的祖先。static Component
getUnwrappedView
(JViewport viewport) 返回JViewport
的第一个不是JLayer
实例的后代。static Window
返回c
的第一个Window
祖先,如果c
不包含在Window
中,则返回null
。static void
invokeAndWait
(Runnable doRun) 导致doRun.run()
在AWT事件分派线程上同步执行。static void
invokeLater
(Runnable doRun) 导致doRun.run()在AWT事件分派线程上异步执行。static boolean
如果组件a
是组件b
的后代,则返回true
。static boolean
如果当前线程是AWT事件分派线程,则返回true
。static boolean
isLeftMouseButton
(MouseEvent anEvent) 如果鼠标事件指定左鼠标按钮,则返回true
。static boolean
isMiddleMouseButton
(MouseEvent anEvent) 如果鼠标事件指定中间鼠标按钮,则返回true
。static final boolean
如果a
包含b
,则返回true
。static boolean
isRightMouseButton
(MouseEvent anEvent) 如果鼠标事件指定右鼠标按钮,则返回true
。static String
layoutCompoundLabel
(FontMetrics fm, String text, Icon icon, int verticalAlignment, int horizontalAlignment, int verticalTextPosition, int horizontalTextPosition, Rectangle viewR, Rectangle iconR, Rectangle textR, int textIconGap) 计算并返回图标原点的位置,文本基线的原点位置以及复合标签字符串的可能剪切版本。static String
layoutCompoundLabel
(JComponent c, FontMetrics fm, String text, Icon icon, int verticalAlignment, int horizontalAlignment, int verticalTextPosition, int horizontalTextPosition, Rectangle viewR, Rectangle iconR, Rectangle textR, int textIconGap) 计算并返回图标原点的位置,文本基线的原点位置以及复合标签字符串的可能剪切版本。static boolean
notifyAction
(Action action, KeyStroke ks, KeyEvent event, Object sender, int modifiers) 如果action
非null
且接受发送方对象,则调用actionPerformed
。static void
paintComponent
(Graphics g, Component c, Container p, int x, int y, int w, int h) 将组件绘制到指定的Graphics
。static void
paintComponent
(Graphics g, Component c, Container p, Rectangle r) 将组件绘制到指定的Graphics
。static boolean
processKeyBindings
(KeyEvent event) 处理与event
关联的Component
的键绑定。static void
replaceUIActionMap
(JComponent component, ActionMap uiActionMap) 将component
的UI ActionMap更改为uiActionMap
的便捷方法。static void
replaceUIInputMap
(JComponent component, int type, InputMap uiInputMap) 将component
的UI InputMap更改为uiInputMap
的便捷方法。static void
简单的外观更改:要求树中的每个节点执行updateUI()
-- 即,使用当前外观初始化其UI属性。static Window
返回c
的第一个Window
祖先,如果c
不包含在Window
中,则返回null
。
-
Method Details
-
isRectangleContainingRectangle
如果a
包含b
,则返回true
。- 参数:
-
a
- 第一个矩形 -
b
- 第二个矩形 - 返回:
-
如果
a
包含b
,则返回true
-
getLocalBounds
返回组件aComponent
的矩形(0,0,bounds.width,bounds.height)。- 参数:
-
aComponent
- 一个组件 - 返回:
-
组件
aComponent
的本地边界
-
getWindowAncestor
返回c
的第一个Window
祖先,如果c
不包含在Window
中,则返回null
。- 参数:
-
c
- 要获取Window
祖先的Component
- 返回:
-
c
的第一个Window
祖先,如果c
不包含在Window
中,则返回null
- 自1.3版本起:
- 1.3
-
convertPoint
将aPoint
从source
坐标系转换为destination
坐标系。如果source
为null
,则假定aPoint
在destination
的根组件坐标系中。如果destination
为null
,则将aPoint
转换为source
的根组件坐标系。如果source
和destination
都为null
,则返回aPoint
而不进行任何转换。- 参数:
-
source
- 源组件 -
aPoint
- 点 -
destination
- 目标组件 - 返回:
- 转换后的坐标
-
convertPoint
将(x,y)
点从source
坐标系转换为destination
坐标系。如果source
为null
,则假定(x,y)
在destination
的根组件坐标系中。如果destination
为null
,则将(x,y)
转换为source
的根组件坐标系。如果source
和destination
都为null
,则返回(x,y)
而不进行任何转换。- 参数:
-
source
- 源组件 -
x
- 点的x坐标 -
y
- 点的y坐标 -
destination
- 目标组件 - 返回:
- 转换后的坐标
-
convertRectangle
public static Rectangle convertRectangle(Component source, Rectangle aRectangle, Component destination) 将aRectangle
从source
坐标系转换为destination
坐标系。如果source
为null
,则假定aRectangle
在destination
的根组件坐标系中。如果destination
为null
,则将aRectangle
转换为source
的根组件坐标系。如果source
和destination
都为null
,则返回aRectangle
而不进行任何转换。- 参数:
-
source
- 源组件 -
aRectangle
- 一个矩形 -
destination
- 目标组件 - 返回:
- 转换后的矩形
-
getAncestorOfClass
在组件层次结构中向上搜索comp
的便捷方法,并返回找到的第一个c
类对象。如果找不到类c
,则可能返回null
。- 参数:
-
c
- 一个组件的类 -
comp
- 组件 - 返回:
-
comp
的祖先,如果找不到c
,则可能返回null
。
-
getAncestorNamed
在组件层次结构中向上搜索comp
的便捷方法,并返回找到的第一个name
对象。如果找不到name
,则可能返回null
。- 参数:
-
name
- 一个组件的名称 -
comp
- 组件 - 返回:
-
comp
的祖先,如果找不到name
,则可能返回null
。
-
getDeepestComponentAt
返回包含位置x
,y
的parent
中最深层可见的后代组件。如果parent
不包含指定位置,则返回null
。如果parent
不是容器,或者parent
的可见后代中没有一个包含指定位置,则返回parent
。- 参数:
-
parent
- 开始搜索的根组件 -
x
- x 目标位置 -
y
- y 目标位置 - 返回:
- 最深的组件
-
convertMouseEvent
public static MouseEvent convertMouseEvent(Component source, MouseEvent sourceEvent, Component destination) 返回一个类似于sourceEvent
的 MouseEvent,但其 x 和 y 成员已转换为destination
的坐标系。如果source
是null
,则假定sourceEvent
的 x 和 y 成员是相对于destination
的根组件坐标系。如果destination
是null
,返回的 MouseEvent 将在source
的坐标系中。不会更改sourceEvent
。将返回一个新事件。如果 destination 非null
,返回事件的source
字段将设置为destination
,使用 translateMouseEvent() 方法将鼠标事件从一个组件转换到另一个组件而不更改源。- 参数:
-
source
- 源组件 -
sourceEvent
- 源鼠标事件 -
destination
- 目标组件 - 返回:
- 新的鼠标事件
-
convertPointToScreen
将一个点从组件的坐标系转换为屏幕坐标。- 参数:
-
p
- 一个 Point 对象(转换为新坐标系) -
c
- 一个组件对象
-
convertPointFromScreen
将一个点从屏幕坐标转换为组件的坐标系- 参数:
-
p
- 一个 Point 对象(转换为新坐标系) -
c
- 一个组件对象
-
windowForComponent
返回c
的第一个Window
祖先,如果c
不包含在Window
中,则返回null
。注意:此方法提供与
getWindowAncestor
相同的功能。- 参数:
-
c
- 要获取Window
祖先的Component
。 - 返回:
-
c
的第一个Window
祖先,如果c
不包含在Window
中,则返回null
。
-
isDescendingFrom
如果组件a
是组件b
的后代,则返回true
- 参数:
-
a
- 第一个组件 -
b
- 第二个组件 - 返回:
-
如果组件
a
是组件b
的后代,则返回true
-
computeIntersection
方便地计算两个矩形的交集,而不分配新矩形。如果两个矩形不相交,则返回的矩形从 (0,0) 开始,宽度和高度为零。- 参数:
-
x
- 第一个矩形左上角点的 X 坐标 -
y
- 第一个矩形左上角点的 Y 坐标 -
width
- 第一个矩形的宽度 -
height
- 第一个矩形的高度 -
dest
- 第二个矩形 - 返回:
-
修改后指定交集的
dest
-
computeUnion
方便地计算两个矩形的并集,而不分配新矩形。- 参数:
-
x
- 第一个矩形的 x 坐标 -
y
- 第一个矩形的 y 坐标 -
width
- 第一个矩形的宽度 -
height
- 第一个矩形的高度 -
dest
- 第二个矩形的坐标;两个矩形的并集将返回在此矩形中 - 返回:
-
dest
的Rectangle
-
computeDifference
返回一个表示rectA
中与rectB
不重叠的区域的矩形数组。如果两个矩形不重叠,则返回一个空数组- 参数:
-
rectA
- 第一个矩形 -
rectB
- 第二个矩形 - 返回:
-
一个表示
rectA
中与rectB
不重叠的区域的矩形数组。
-
isLeftMouseButton
如果鼠标事件指定了左鼠标按钮,则返回 true。- 参数:
-
anEvent
- 一个 MouseEvent 对象 - 返回:
- 如果左鼠标按钮处于活动状态,则返回 true
-
isMiddleMouseButton
如果鼠标事件指定了中间鼠标按钮,则返回 true。- 参数:
-
anEvent
- 一个 MouseEvent 对象 - 返回:
- 如果中间鼠标按钮处于活动状态,则返回 true
-
isRightMouseButton
如果鼠标事件指定了右鼠标按钮,则返回 true。- 参数:
-
anEvent
- 一个 MouseEvent 对象 - 返回:
- 如果右鼠标按钮处于活动状态,则返回 true
-
computeStringWidth
使用具有指定“度量”(大小)的字体计算字符串的宽度。- 参数:
-
fm
- 用于计算的 FontMetrics 对象 -
str
- 要计算的字符串 - 返回:
- 包含字符串宽度的 int
-
layoutCompoundLabel
public static String layoutCompoundLabel(JComponent c, FontMetrics fm, String text, Icon icon, int verticalAlignment, int horizontalAlignment, int verticalTextPosition, int horizontalTextPosition, Rectangle viewR, Rectangle iconR, Rectangle textR, int textIconGap) 计算并返回图标原点的位置,文本基线的原点位置,以及可能被剪切的复合标签字符串的版本。位置是相对于 viewR 矩形计算的。还将考虑 JComponents 的方向(LEADING/TRAILING),并相应地转换为 LEFT/RIGHT 值。- 参数:
-
c
- 组件 -
fm
-FontMetrics
的实例 -
text
- 文本 -
icon
- 图标 -
verticalAlignment
- 垂直对齐 -
horizontalAlignment
- 水平对齐 -
verticalTextPosition
- 垂直文本位置 -
horizontalTextPosition
- 水平文本位置 -
viewR
- 可用矩形 -
iconR
- 图标的矩形 -
textR
- 文本的矩形 -
textIconGap
- 文本和图标之间的间隙 - 返回:
- 可能被剪切的复合标签字符串的版本
-
layoutCompoundLabel
public static String layoutCompoundLabel(FontMetrics fm, String text, Icon icon, int verticalAlignment, int horizontalAlignment, int verticalTextPosition, int horizontalTextPosition, Rectangle viewR, Rectangle iconR, Rectangle textR, int textIconGap) 计算并返回图标原点的位置,文本基线的原点位置,以及可能被剪切的复合标签字符串的版本。位置是相对于 viewR 矩形计算的。此 layoutCompoundLabel() 不知道如何处理 horizontalTextPosition 中的 LEADING/TRAILING 值(它们将默认为 RIGHT)以及 horizontalAlignment 中的 LEADING/TRAILING 值(它们将默认为 CENTER)。请改用 layoutCompoundLabel() 的其他版本。- 参数:
-
fm
-FontMetrics
的实例 -
text
- 文本 -
icon
- 图标 -
verticalAlignment
- 垂直对齐 -
horizontalAlignment
- 水平对齐 -
verticalTextPosition
- 垂直文本位置 -
horizontalTextPosition
- 水平文本位置 -
viewR
- 可用矩形 -
iconR
- 图标的矩形 -
textR
- 文本的矩形 -
textIconGap
- 文本和图标之间的间隙 - 返回:
- 可能被剪切的复合标签字符串的版本
-
paintComponent
将组件绘制到指定的Graphics
。此方法主要用于渲染不作为可见包含层次结构的一部分存在的Component
,但用于渲染。例如,如果您正在进行自己的渲染并希望渲染一些文本(甚至是 HTML),您可以利用JLabel
的文本渲染支持,并通过此方法直接绘制,而无需将标签添加到可见包含层次结构中。此方法利用
CellRendererPane
来处理实际绘制,并且仅在使用一个组件进行渲染时才建议使用。如果使用多个组件来处理渲染,如JTable
所做的那样,请直接使用CellRendererPane
。否则,如下所述,您可能会得到一个CellRendererPane
每个Component
。如果
c
的父级不是CellRendererPane
,则会创建一个新的CellRendererPane
,将c
添加到其中,并将CellRendererPane
添加到p
。如果c
的父级是CellRendererPane
,并且CellRendererPane
的父级不是p
,则将其添加到p
。组件应该是
JComponent
的后代,或者是另一种轻量级组件。轻量级组件是其“轻量级”属性(由Component
的isLightweight
方法返回)为 true 的组件。如果组件不是轻量级的,可能会发生糟糕的事情:崩溃、异常、绘制问题...- 参数:
-
g
- 要绘制的Graphics
对象 -
c
- 要绘制的Component
-
p
- 中间的Container
-
x
- 以像素为单位指定要绘制的区域的左侧,从图形上下文的左边缘开始测量 -
y
- 以像素为单位指定要绘制的区域的顶部,从图形上下文的顶边缘向下测量 -
w
- 以像素为单位指定要绘制的区域的宽度 -
h
- 以像素为单位指定要绘制的区域的高度 - 参见:
-
paintComponent
将组件绘制到指定的Graphics
。这是paintComponent(Graphics,Component,Container,int,int,int,int)
的封装方法。有关更多信息,请参考该方法。- 参数:
-
g
- 要绘制的Graphics
对象 -
c
- 要绘制的Component
-
p
- 中间的Container
-
r
- 要绘制的Rectangle
- 参见:
-
updateComponentTreeUI
一个简单的外观更改:询问树中的每个节点updateUI()
-- 即,使用当前外观和感觉初始化其UI属性。- 参数:
-
c
- 组件
-
invokeLater
导致doRun.run()在AWT事件分派线程上异步执行。这将在处理完所有待处理的AWT事件之后发生。当应用程序线程需要更新GUI时,应使用此方法。在以下示例中,invokeLater
调用将Runnable
对象doHelloWorld
排队到事件分派线程上,然后打印一条消息。Runnable doHelloWorld = new Runnable() { public void run() { System.out.println("Hello World on " + Thread.currentThread()); } }; SwingUtilities.invokeLater(doHelloWorld); System.out.println("This might well be displayed before the other message.");
如果从事件分派线程调用invokeLater
-- 例如,从JButton的ActionListener中 -- doRun.run()仍将被推迟,直到处理完所有待处理事件。请注意,如果doRun.run()抛出未捕获的异常,事件分派线程将展开(而不是当前线程)。有关此方法的其他文档和示例,请参见Swing中的并发。
从1.3开始,此方法只是
java.awt.EventQueue.invokeLater()
的一个封装。与Swing的其余部分不同,此方法可以从任何线程调用。
- 参数:
-
doRun
-Runnable
的实例 - 参见:
-
invokeAndWait
public static void invokeAndWait(Runnable doRun) throws InterruptedException, InvocationTargetException 导致doRun.run()
在AWT事件分派线程上同步执行。此调用将阻塞,直到处理完所有待处理的AWT事件,然后doRun.run()
返回。当应用程序线程需要更新GUI时,应使用此方法。不应该从事件分派线程调用它。以下是一个示例,创建一个新的应用程序线程,使用invokeAndWait
从事件分派线程打印一个字符串,然后在完成后从应用程序线程打印一个字符串。final Runnable doHelloWorld = new Runnable() { public void run() { System.out.println("Hello World on " + Thread.currentThread()); } }; Thread appThread = new Thread() { public void run() { try { SwingUtilities.invokeAndWait(doHelloWorld); } catch (Exception e) { e.printStackTrace(); } System.out.println("Finished on " + Thread.currentThread()); } }; appThread.start();
请注意,如果Runnable.run
方法抛出未捕获的异常(在事件分派线程上),它将被捕获并重新抛出,作为InvocationTargetException
,在调用者的线程上。有关此方法的其他文档和示例,请参见Swing中的并发。
从1.3开始,此方法只是
java.awt.EventQueue.invokeAndWait()
的一个封装。- 参数:
-
doRun
-Runnable
的实例 - 抛出:
-
InterruptedException
- 如果我们在等待事件分派线程完成执行doRun.run()
时被中断 -
InvocationTargetException
- 如果在运行doRun
时抛出异常 - 参见:
-
isEventDispatchThread
public static boolean isEventDispatchThread()如果当前线程是AWT事件分派线程,则返回true。从1.3开始,此方法只是
java.awt.EventQueue.isDispatchThread()
的一个封装。- 返回:
- 如果当前线程是AWT事件分派线程,则返回true
-
getAccessibleIndexInParent
获取此对象在其可访问父级中的索引。注意:从Java 2平台v1.3开始,建议开发人员调用Component.AccessibleAWTComponent.getAccessibleIndexInParent()而不是使用此方法。
- 参数:
-
c
- 组件 - 返回:
- 如果此对象没有可访问父级,则返回-1。否则,返回其可访问父级中的子项索引。
-
getAccessibleAt
返回包含在本地坐标Point
处的Accessible
子项,如果存在。否则返回null
。- 参数:
-
c
- 组件 -
p
- 本地坐标 - 返回:
-
如果指定位置存在
Accessible
,则返回该位置的Accessible
;否则返回null
。
-
getAccessibleStateSet
获取此对象的状态。注意:从Java 2平台v1.3开始,建议开发人员调用Component.AccessibleAWTComponent.getAccessibleIndexInParent()而不是使用此方法。
- 参数:
-
c
- 组件 - 返回:
- 包含对象当前状态集的AccessibleStateSet实例
- 参见:
-
getAccessibleChildrenCount
返回对象中可访问子项的数量。如果此对象的所有子项都实现了Accessible,则此方法应返回此对象的子项数。注意:从Java 2平台v1.3开始,建议开发人员调用Component.AccessibleAWTComponent.getAccessibleIndexInParent()而不是使用此方法。
- 参数:
-
c
- 组件 - 返回:
- 对象中可访问子项的数量。
-
getAccessibleChild
返回对象的第n个Accessible子项。注意:从Java 2平台v1.3开始,建议开发人员调用Component.AccessibleAWTComponent.getAccessibleIndexInParent()而不是使用此方法。
- 参数:
-
c
- 组件 -
i
- 子项的从零开始的索引 - 返回:
- 对象的第n个Accessible子项
-
findFocusOwner
Deprecated.As of 1.4, replaced byKeyboardFocusManager.getFocusOwner()
.返回指定Component
的焦点所有者子Component
,如果有的话。- 参数:
-
c
- 要搜索焦点所有者的Component
层次结构的根 - 返回:
-
焦点所有者,如果没有焦点所有者,或者焦点所有者不是
comp
,或者是comp
的后代,则返回null
- 参见:
-
getRootPane
如果c是JRootPane的后代,则返回其JRootPane祖先。如果c是RootPaneContainer,则返回其JRootPane。- 参数:
-
c
- 组件 - 返回:
-
组件c的JRootPane或
null
。
-
getRoot
返回当前组件树的根组件。- 参数:
-
c
- 组件 - 返回:
- c的第一个Window祖先或最后一个Applet祖先
-
processKeyBindings
处理与event
关联的Component
的键绑定。如果event.getComponent()
不是JComponent
的子类,或者您没有在JComponent
子类中调用super.processKeyEvent
,则此方法才有用。JComponent
会自动在其processKeyEvent
方法中处理绑定,因此您很少需要直接调用此方法。- 参数:
-
event
- 用于标识要处理的绑定以及具有焦点的组件的KeyEvent - 返回:
- 如果找到并处理了绑定,则返回true
- 自:
- 1.4
-
notifyAction
public static boolean notifyAction(Action action, KeyStroke ks, KeyEvent event, Object sender, int modifiers) 如果action
非null
并接受发送方对象,则在action
上调用actionPerformed
。ActionEvent的命令由以下确定:- 如果通过
registerKeyboardAction
注册了操作,则使用传入的命令字符串(如果传入了null
,则使用null
)。 - 具有名称Action.ACTION_COMMAND_KEY的Action值,除非为
null
。 - KeyEvent的字符串值,除非
getKeyChar
返回KeyEvent.CHAR_UNDEFINED。
action
非null
并且在其上调用了actionPerformed,则返回true。- 参数:
-
action
- 一个操作 -
ks
- 一个键盘键 -
event
- 一个键盘事件 -
sender
- 一个发送方 -
modifiers
- 操作修饰符 - 返回:
-
如果
action
非null
并且在其上调用了actionPerformed,则返回true
- 自:
- 1.3
- 参见:
- 如果通过
-
replaceUIInputMap
将component
的UI InputMap更改为uiInputMap
的便捷方法。如果uiInputMap
为null
,则会删除先前安装的任何UI InputMap。- 参数:
-
component
- 一个组件 -
type
- 一个类型 -
uiInputMap
- 一个InputMap
- 自版本:
- 1.3
-
replaceUIActionMap
将component
的UI ActionMap更改为uiActionMap
的便捷方法。如果uiActionMap
为null
,则会移除先前安装的任何UI ActionMap。- 参数:
-
component
- 一个组件 -
uiActionMap
- 一个ActionMap
- 自版本:
- 1.3
-
getUIInputMap
返回UI为条件condition
在组件component
中提供的InputMap。如果UI尚未安装指定类型的InputMap,则会返回
null
。- 参数:
-
component
- 一个组件 -
condition
- 一个条件 - 返回:
-
UI为组件中的
condition
提供的ActionMap
,如果UI尚未安装指定类型的InputMap,则返回null
。 - 自版本:
- 1.3
-
getUIActionMap
返回UI在组件component
中提供的ActionMap。如果UI尚未安装ActionMap,则会返回
null
。- 参数:
-
component
- 一个组件 - 返回:
-
UI在组件中提供的
ActionMap
,如果UI尚未安装ActionMap,则返回null
。 - 自版本:
- 1.3
-
calculateInnerArea
将指定组件的内部绘制区域的位置和大小存储在r
中并返回r
。位置和大小指定组件的边界,调整以不包括边框区域(插图)。此方法对于实现绘制代码的类非常有用。- 参数:
-
c
- 要查询的JComponent;如果为null
,此方法将返回null
-
r
- 要修改的Rectangle实例;可以为null
- 返回:
-
如果组件为
null
,则返回null
;否则,返回传入的矩形(如果非null
)或指定位置和大小信息的新矩形 - 自版本:
- 1.4
-
getUnwrappedParent
返回component
的第一个祖先,该祖先不是JLayer
的实例。- 参数:
-
component
- 要获取其第一个非JLayer
实例祖先的Component
。 - 返回:
-
component
的第一个非JLayer
实例祖先。如果找不到这样的祖先,则返回null
。 - 抛出:
-
NullPointerException
- 如果component
为null
- 自版本:
- 1.7
- 参见:
-
getUnwrappedView
返回JViewport
的第一个后代,该后代不是JLayer
的实例。如果找不到这样的后代,则返回null
。如果viewport
的视图组件不是JLayer
,则此方法等同于JViewport.getView()
,否则将在所有下降的JLayer
上递归调用JLayer.getView()
。- 参数:
-
viewport
- 要获取其第一个非JLayer
实例后代的JViewport
。 - 返回:
-
JViewport
的第一个后代,该后代不是JLayer
的实例。如果找不到这样的后代,则返回null
。 - 抛出:
-
NullPointerException
- 如果viewport
为null
- 自版本:
- 1.7
- 参见:
-
KeyboardFocusManager.getFocusOwner()
替代。