java.awt
类 Toolkit
java.lang.Object
java.awt.Toolkit
public abstract class Toolkit
extends Object
此类是所有 Abstract Window Toolkit 实际实现的抽象超类。Toolkit
的子类被用于将各种组件绑定到特定本机工具包实现。
许多 GUI 操作可以异步执行。这意味着如果设置某一组件的状态,随后立刻查询该状态,则返回的值可能并没有反映所请求的更改。这包括但不局限于以下操作:
- 滚动到指定位置。
例如,如果原始请求没有被处理,那么调用ScrollPane.setScrollPosition
并随后调用getScrollPosition
可能返回一个不正确的值。 - 将焦点从一个组件移动到另一个组件。
有关更多信息,请参阅 The Swing Tutorial 的 Timing Focus Transfers 一节。 - 使顶层容器可见。
对Window
、Frame
或Dialog
调用setVisible(true)
可能异步发生。 - 设置顶层容器的大小或位置。
对Window
、Frame
或Dialog
调用setSize
、setBounds
或setLocation
将被转发到底层窗口管理系统,并可能被忽略或修改。有关更多信息,请参阅 Window。
大多数应用程序不应直接调用该类中的任何方法。Toolkit
定义的方法是一种“胶水”,将 java.awt
包中与平台无关的类与 java.awt.peer
中的对应物连接起来。Toolkit
定义的一些方法能直接查询本机操作系统。
-
从以下版本开始:
- JDK1.0
字段摘要 | |
---|---|
protected Map<String,Object> | desktopProperties |
protected PropertyChangeSupport | desktopPropsSupport |
构造方法摘要 | |
---|---|
Toolkit() |
方法摘要 | ||
---|---|---|
void | addAWTEventListener(AWTEventListener listener, long eventMask) 添加一个 AWTEventListener,以接收与给定 eventMask 一致的系统范围内指派的所有 AWTEvent。 | |
void | addPropertyChangeListener(String name, PropertyChangeListener pcl) 为指定的桌面属性添加指定的属性更改侦听器。 | |
abstract void | beep() 发出一个音频嘟嘟声。 | |
abstract int | checkImage(Image image, int width, int height, ImageObserver observer) 指示正准备显示的指定图像的构造状态。 | |
protected abstract java.awt.peer.ButtonPeer | createButton(Button target) 使用指定同位体接口创建此工具包的 Button 实现。 | |
protected abstract java.awt.peer.CanvasPeer | createCanvas(Canvas target) 使用指定同位体接口创建此工具包的 Canvas 实现。 | |
protected abstract java.awt.peer.CheckboxPeer | createCheckbox(Checkbox target) 使用指定同位体接口创建此工具包的 Checkbox 实现。 | |
protected abstract java.awt.peer.CheckboxMenuItemPeer | createCheckboxMenuItem(CheckboxMenuItem target) 使用指定同位体接口创建此工具包的 CheckboxMenuItem 实现。 | |
protected abstract java.awt.peer.ChoicePeer | createChoice(Choice target) 使用指定同位体接口创建此工具包的 Choice 实现。 | |
protected java.awt.peer.LightweightPeer | createComponent(Component target) 创建组件或容器的同位体。 | |
Cursor | createCustomCursor(Image cursor, Point hotSpot, String name) 创建一个新的自定义光标对象。 | |
protected abstract java.awt.peer.DesktopPeer | createDesktopPeer(Desktop target) 使用指定的同位体接口创建此工具包的 Desktop 实现。 | |
protected abstract java.awt.peer.DialogPeer | createDialog(Dialog target) 使用指定同位体接口创建此工具包的 Dialog 实现。 | |
| createDragGestureRecognizer(Class<T> abstractRecognizerClass, DragSource ds, Component c, int srcActions, DragGestureListener dgl) 创建所请求的抽象 DragGestureRecognizer 类的具体的、与平台有关的子类,并将它与指定的 DragSource、Component 和 DragGestureListener 关联。 | |
abstract java.awt.dnd.peer.DragSourceContextPeer | createDragSourceContextPeer(DragGestureEvent dge) 创建 DragSourceContext 的同位体。 | |
protected abstract java.awt.peer.FileDialogPeer | createFileDialog(FileDialog target) 使用指定同位体接口创建此工具包的 FileDialog 实现。 | |
protected abstract java.awt.peer.FramePeer | createFrame(Frame target) 使用指定同位体接口创建此工具包的 Frame 实现。 | |
Image | createImage(byte[] imagedata) 创建一幅图像,该图像对存储在指定字节数组中的图像进行解码。 | |
abstract Image | createImage(byte[] imagedata, int imageoffset, int imagelength) 创建一幅图像,该图像对存储在指定字节数组中指定偏移量和长度处的图像进行解码。 | |
abstract Image | createImage(ImageProducer producer) 使用指定的图像生成器创建一幅图像。 | |
abstract Image | createImage(String filename) 返回从指定文件获取像素数据的图像。 | |
abstract Image | createImage(URL url) 返回一幅图像,该图像从指定 URL 获取像素数据。 | |
protected abstract java.awt.peer.LabelPeer | createLabel(Label target) 使用指定同位体接口创建此工具包的 Label 实现。 | |
protected abstract java.awt.peer.ListPeer | createList(List target) 使用指定同位体接口创建此工具包的 List 实现。 | |
protected abstract java.awt.peer.MenuPeer | createMenu(Menu target) 使用指定同位体接口创建此工具包的 Menu 实现。 | |
protected abstract java.awt.peer.MenuBarPeer | createMenuBar(MenuBar target) 使用指定同位体接口创建此工具包的 MenuBar 实现。 | |
protected abstract java.awt.peer.MenuItemPeer | createMenuItem(MenuItem target) 使用指定同位体接口创建此工具包的 MenuItem 实现。 | |
protected abstract java.awt.peer.PanelPeer | createPanel(Panel target) 使用指定同位体接口创建此工具包的 Panel 实现。 | |
protected abstract java.awt.peer.PopupMenuPeer | createPopupMenu(PopupMenu target) 使用指定同位体接口创建此工具包的 PopupMenu 实现。 | |
protected abstract java.awt.peer.ScrollbarPeer | createScrollbar(Scrollbar target) 使用指定同位体接口创建此工具包的 Scrollbar 实现。 | |
protected abstract java.awt.peer.ScrollPanePeer | createScrollPane(ScrollPane target) 使用指定同位体接口创建此工具包的 ScrollPane 实现。 | |
protected abstract java.awt.peer.TextAreaPeer | createTextArea(TextArea target) 使用指定同位体接口创建此工具包的 TextArea 实现。 | |
protected abstract java.awt.peer.TextFieldPeer | createTextField(TextField target) 使用指定同位体接口创建此工具包的 TextField 实现。 | |
protected abstract java.awt.peer.WindowPeer | createWindow(Window target) 使用指定同位体接口创建此工具包的 Window 实现。 | |
AWTEventListener[] | getAWTEventListeners() 返回在此工具包上所有已注册 AWTEventListener 所组成的数组。 | |
AWTEventListener[] | getAWTEventListeners(long eventMask) 返回已在此工具包上注册的所有 AWTEventListener 所组成的数组,这些侦听器侦听用 eventMask 参数指定的所有事件类型。 | |
Dimension | getBestCursorSize(int preferredWidth, int preferredHeight) 返回最接近所需大小的受支持光标尺寸。 | |
abstract ColorModel | getColorModel() 确定此工具包屏幕的颜色模型。 | |
static Toolkit | getDefaultToolkit() 获取默认工具包。 | |
Object | getDesktopProperty(String propertyName) 获取指定桌面属性的值。 | |
abstract String[] | getFontList() 已过时。 请参阅 GraphicsEnvironment.getAvailableFontFamilyNames() | |
abstract FontMetrics | getFontMetrics(Font font) 已过时。 从 JDK version 1.2 开始,由 Font 方法 getLineMetrics 取代。 | |
protected abstract java.awt.peer.FontPeer | getFontPeer(String name, int style) 已过时。 请参阅 java.awt.GraphicsEnvironment#getAllFonts | |
abstract Image | getImage(String filename) 返回一幅图像,该图像从指定文件中获取像素数据,图像格式可以是 GIF、JPEG 或 PNG。 | |
abstract Image | getImage(URL url) 返回一幅图像,该图像从指定 URL 获取像素数据。 | |
boolean | getLockingKeyState(int keyCode) 返回键盘上给定锁定键是否处于 "on" 状态。 | |
int | getMaximumCursorColors() 返回自定义光标调色板中 Toolkit 支持的最大颜色数。 | |
int | getMenuShortcutKeyMask() 确定哪一个修改键是菜单快捷方式的适当加速键。 | |
protected java.awt.peer.MouseInfoPeer | getMouseInfoPeer() 使用指定同位体接口创建此工具包的 MouseInfo 实现。 | |
protected static Container | getNativeContainer(Component c) 使本机同位体能够查询给定本机组件的本机容器(例如,直接父组件可以是轻量级的)。 | |
PrintJob | getPrintJob(Frame frame, String jobtitle, JobAttributes jobAttributes, PageAttributes pageAttributes) 获取一个 PrintJob 对象,该对象是在工具包平台上初始化某个打印操作的结果。 | |
abstract PrintJob | getPrintJob(Frame frame, String jobtitle, Properties props) 获取一个 PrintJob 对象,该对象是在工具包平台上初始化某个打印操作的结果。 | |
static String | getProperty(String key, String defaultValue) 获取具有指定键和默认值的属性。 | |
PropertyChangeListener[] | getPropertyChangeListeners() 返回在此工具包上所有已注册的属性更改侦听器所组成的数组。 | |
PropertyChangeListener[] | getPropertyChangeListeners(String propertyName) 返回与指定属性关联的所有 PropertyChangeListener 所组成的数组。 | |
Insets | getScreenInsets(GraphicsConfiguration gc) 获得屏幕的 insets。 | |
abstract int | getScreenResolution() 返回屏幕分辨率,以每英寸的点数为单位。 | |
abstract Dimension | getScreenSize() 获取屏幕的大小。 | |
abstract Clipboard | getSystemClipboard() 获取系统 Clipboard 的一个实例,该 Clipboard 可作为本机平台提供的剪贴板工具的接口。 | |
EventQueue | getSystemEventQueue() 获取应用程序或 applet 的 EventQueue 实例。 | |
protected abstract EventQueue | getSystemEventQueueImpl() 获取应用程序或 applet 的 EventQueue 实例,不检查访问权。 | |
Clipboard | getSystemSelection() 以 Clipboard 对象的形式获取系统选择的一个实例。 | |
protected void | initializeDesktopProperties() initializeDesktopProperties | |
boolean | isAlwaysOnTopSupported() 返回此工具包是否支持 always-on-top 模式。 | |
boolean | isDynamicLayoutActive() 返回当前是否激活了调整大小时的动态布局(以编程方式设置,并受底层操作系统和/或窗口管理器支持)。 | |
protected boolean | isDynamicLayoutSet() 返回 Container 的布局是在调整大小期间动态地生效,还是在完成调整大小后静态地生效。 | |
boolean | isFrameStateSupported(int state) 返回 Toolkit 是否支持 Frame 状态。 | |
abstract boolean | isModalExclusionTypeSupported(Dialog.ModalExclusionType modalExclusionType) 返回此工具包是否支持给定的模式排斥类型。 | |
abstract boolean | isModalityTypeSupported(Dialog.ModalityType modalityType) 返回此工具包是否支持给定的模式类型。 | |
protected Object | lazilyLoadDesktopProperty(String name) 一个对桌面属性值延迟计算的机会。 | |
protected void | loadSystemColors(int[] systemColors) 使用当前系统颜色值填充作为参数提供的整数数组。 | |
abstract Map<TextAttribute,?> | mapInputMethodHighlight(InputMethodHighlight highlight) 返回给定输入方法高亮区的抽象级别描述的可视属性映射,如果不存在映射关系,则返回 null。 | |
abstract boolean | prepareImage(Image image, int width, int height, ImageObserver observer) 准备一个用于呈现的图像。 | |
void | removeAWTEventListener(AWTEventListener listener) 从正接收的指派 AWTEvent 中移除一个 AWTEventListener。 | |
void | removePropertyChangeListener(String name, PropertyChangeListener pcl) 为指定的桌面属性移除指定的属性更改侦听器。 | |
protected void | setDesktopProperty(String name, Object newValue) 将指定桌面属性设置为指定值,并触发一个属性更改事件,以通知所有侦听器该值已更改。 | |
void | setDynamicLayout(boolean dynamic) 控制 Container 的布局是在调整大小期间动态地生效,还是在完成调整大小后静态地生效。 | |
void | setLockingKeyState(int keyCode, boolean on) 设置键盘上给定锁定键的状态。 | |
abstract void | sync() 同步此工具包的图形状态。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
desktopProperties
protected final Map<String,Object> desktopProperties
desktopPropsSupport
protected final PropertyChangeSupport desktopPropsSupport
构造方法详细信息 |
---|
Toolkit
public Toolkit()
方法详细信息 |
---|
createDesktopPeer
protected abstract java.awt.peer.DesktopPeer createDesktopPeer(Desktop target)
throws HeadlessException
-
使用指定的同位体接口创建此工具包的
Desktop
实现。 -
-
参数:
-
target
- 要实现的 Desktop
返回:
-
此工具包的
Desktop
实现
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.6 另请参见:
-
GraphicsEnvironment.isHeadless(), Desktop,
DesktopPeer
-
createButton
protected abstract java.awt.peer.ButtonPeer createButton(Button target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
Button
实现。 -
-
参数:
-
target
- 要实现的按钮。
返回:
-
此工具包的
Button
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), Button,
ButtonPeer
-
createTextField
protected abstract java.awt.peer.TextFieldPeer createTextField(TextField target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
TextField
实现。 -
-
参数:
-
target
- 要实现的文本字段。
返回:
-
此工具包的
TextField
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), TextField,
TextFieldPeer
-
createLabel
protected abstract java.awt.peer.LabelPeer createLabel(Label target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
Label
实现。 -
-
参数:
-
target
- 要实现的标签。
返回:
-
此工具包的
Label
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), Label,
LabelPeer
-
createList
protected abstract java.awt.peer.ListPeer createList(List target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
List
实现。 -
-
参数:
-
target
- 要实现的列表。
返回:
-
此工具包的
List
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), List,
ListPeer
-
createCheckbox
protected abstract java.awt.peer.CheckboxPeer createCheckbox(Checkbox target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
Checkbox
实现。 -
-
参数:
-
target
- 要实现的复选框。
返回:
-
此工具包的
Checkbox
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), Checkbox,
CheckboxPeer
-
createScrollbar
protected abstract java.awt.peer.ScrollbarPeer createScrollbar(Scrollbar target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
Scrollbar
实现。 -
-
参数:
-
target
- 要实现的滚动条。
返回:
-
此工具包的
Scrollbar
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), Scrollbar,
ScrollbarPeer
-
createScrollPane
protected abstract java.awt.peer.ScrollPanePeer createScrollPane(ScrollPane target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
ScrollPane
实现。 -
-
参数:
-
target
- 要实现的滚动窗格。
返回:
-
此工具包的
ScrollPane
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- JDK1.1 另请参见:
-
GraphicsEnvironment.isHeadless(), ScrollPane,
ScrollPanePeer
-
createTextArea
protected abstract java.awt.peer.TextAreaPeer createTextArea(TextArea target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
TextArea
实现。 -
-
参数:
-
target
- 要实现的文本字区域。
返回:
-
此工具包的
TextArea
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), TextArea,
TextAreaPeer
-
createChoice
protected abstract java.awt.peer.ChoicePeer createChoice(Choice target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
Choice
实现。 -
-
参数:
-
target
- 要实现的选择。
返回:
-
此工具包的
Choice
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), Choice,
ChoicePeer
-
createFrame
protected abstract java.awt.peer.FramePeer createFrame(Frame target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
Frame
实现。 -
-
参数:
-
target
- 要实现的窗体。
返回:
-
此工具包的
Frame
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), Frame,
FramePeer
-
createCanvas
protected abstract java.awt.peer.CanvasPeer createCanvas(Canvas target)
-
使用指定同位体接口创建此工具包的
Canvas
实现。 -
-
参数:
-
target
- 要实现的画布。
返回:
-
此工具包的
Canvas
实现。
另请参见:
-
Canvas,
CanvasPeer
-
createPanel
protected abstract java.awt.peer.PanelPeer createPanel(Panel target)
-
使用指定同位体接口创建此工具包的
Panel
实现。 -
-
参数:
-
target
- 要实现的面板。
返回:
-
此工具包的
Panel
实现。
另请参见:
-
Panel,
PanelPeer
-
createWindow
protected abstract java.awt.peer.WindowPeer createWindow(Window target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
Window
实现。 -
-
参数:
-
target
- 要实现的窗口。
返回:
-
此工具包的
Window
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), Window,
WindowPeer
-
createDialog
protected abstract java.awt.peer.DialogPeer createDialog(Dialog target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
Dialog
实现。 -
-
参数:
-
target
- 要实现的对话框。
返回:
-
此工具包的
Dialog
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), Dialog,
DialogPeer
-
createMenuBar
protected abstract java.awt.peer.MenuBarPeer createMenuBar(MenuBar target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
MenuBar
实现。 -
-
参数:
-
target
- 要实现的菜单栏。
返回:
-
此工具包的
MenuBar
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), MenuBar,
MenuBarPeer
-
createMenu
protected abstract java.awt.peer.MenuPeer createMenu(Menu target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
Menu
实现。 -
-
参数:
-
target
- 要实现的菜单。
返回:
-
此工具包的
Menu
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), Menu,
MenuPeer
-
createPopupMenu
protected abstract java.awt.peer.PopupMenuPeer createPopupMenu(PopupMenu target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
PopupMenu
实现。 -
-
参数:
-
target
- 要实现的弹出菜单。
返回:
-
此工具包的
PopupMenu
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- JDK1.1 另请参见:
-
GraphicsEnvironment.isHeadless(), PopupMenu,
PopupMenuPeer
-
createMenuItem
protected abstract java.awt.peer.MenuItemPeer createMenuItem(MenuItem target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
MenuItem
实现。 -
-
参数:
-
target
- 要实现的菜单项。
返回:
-
此工具包的
MenuItem
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), MenuItem,
MenuItemPeer
-
createFileDialog
protected abstract java.awt.peer.FileDialogPeer createFileDialog(FileDialog target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
FileDialog
实现。 -
-
参数:
-
target
- 要实现的文件对话框。
返回:
-
此工具包的
FileDialog
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), FileDialog,
FileDialogPeer
-
createCheckboxMenuItem
protected abstract java.awt.peer.CheckboxMenuItemPeer createCheckboxMenuItem(CheckboxMenuItem target)
throws HeadlessException
-
使用指定同位体接口创建此工具包的
CheckboxMenuItem
实现。 -
-
参数:
-
target
- 要实现的复选菜单项。
返回:
-
此工具包的
CheckboxMenuItem
实现。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
-
GraphicsEnvironment.isHeadless(), CheckboxMenuItem,
CheckboxMenuItemPeer
-
getMouseInfoPeer
protected java.awt.peer.MouseInfoPeer getMouseInfoPeer()
-
使用指定同位体接口创建此工具包的
MouseInfo
实现。 -
-
返回:
-
此工具包的
MouseInfo
的帮助器实现
抛出:
-
UnsupportedOperationException
- 如果没有实现此操作
从以下版本开始:
- 1.5 另请参见:
-
MouseInfoPeer
, MouseInfo
-
此工具包的
createComponent
protected java.awt.peer.LightweightPeer createComponent(Component target)
-
创建组件或容器的同位体。此同位体是无窗口的,允许直接扩展 Component 和 Container 类,以创建完全在 Java 中定义的无窗口组件。
-
-
参数:
-
target
- 要创建的 Component。
-
getFontPeer
@Deprecated protected abstract java.awt.peer.FontPeer getFontPeer(String name, int style)
-
已过时。
请参阅 java.awt.GraphicsEnvironment#getAllFonts
-
使用指定同位体接口创建此工具包的
Font
实现。 -
-
参数:
-
name
- 要实现的字体 -
style
- 字体样式,比如PLAIN
、BOLD
、ITALIC
或它们的组合
返回:
-
此工具包的
Font
实现
另请参见:
-
Font,
FontPeer
, GraphicsEnvironment.getAllFonts()
-
loadSystemColors
protected void loadSystemColors(int[] systemColors)
throws HeadlessException
-
使用当前系统颜色值填充作为参数提供的整数数组。
-
-
参数:
-
systemColors
- 一个整数数组。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- JDK1.1 另请参见:
- GraphicsEnvironment.isHeadless()
-
setDynamicLayout
public void setDynamicLayout(boolean dynamic)
throws HeadlessException
-
控制 Container 的布局是在调整大小期间动态地生效,还是在完成调整大小后静态地生效。注意,并非所有平台都支持此功能,反之,在某些平台上不能关闭此功能。在不支持(或总是支持)调整大小期间动态布局的平台上设置此属性无效。注意,在某些平台上,此功能可以作为操作系统或窗口管理器的一个属性来设置或取消设置。在这种平台上,在此方法生效前,必须在操作系统或窗口管理器级别上设置动态调整大小的属性。此方法不能改变底层操作系统或窗口管理器的支持或设置。使用 getDesktopProperty("awt.dynamicLayoutSupported") 可以查询 OS/WM 支持。
-
-
参数:
-
dynamic
- 如果该参数为 true,则在调整 Container 大小时重新布置其组件。如果该参数为 false,则布局将在重新调整大小后生效。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.4 另请参见:
- isDynamicLayoutSet(), isDynamicLayoutActive(), getDesktopProperty(String propertyName), GraphicsEnvironment.isHeadless()
-
isDynamicLayoutSet
protected boolean isDynamicLayoutSet()
throws HeadlessException
-
返回 Container 的布局是在调整大小期间动态地生效,还是在完成调整大小后静态地生效。注:此方法返回的值是以编程方式设置的,不会影响调整大小时对动态布局的操作系统或窗口管理器级的支持,也不会影响当前操作系统或窗口管理器设置。使用 getDesktopProperty("awt.dynamicLayoutSupported") 可以查询 OS/WM 支持。
-
-
返回:
- 如果动态地使 Container 有效,则返回 true,如果在结束对大小的调整后使 Containers 有效,则返回 false。 抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.4 另请参见:
- setDynamicLayout(boolean dynamic), isDynamicLayoutActive(), getDesktopProperty(String propertyName), GraphicsEnvironment.isHeadless()
isDynamicLayoutActive
public boolean isDynamicLayoutActive()
throws HeadlessException
-
返回当前是否激活了调整大小时的动态布局(以编程方式设置,并受底层操作系统和/或窗口管理器支持)。使用 getDesktopProperty("awt.dynamicLayoutSupported") 可以查询 OS/WM 支持。
-
-
返回:
- 如果当前激活了调整大小时的动态布局,则返回 true;否则返回 false。 抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.4 另请参见:
- setDynamicLayout(boolean dynamic), isDynamicLayoutSet(), getDesktopProperty(String propertyName), GraphicsEnvironment.isHeadless()
getScreenSize
public abstract Dimension getScreenSize()
throws HeadlessException
-
获取屏幕的大小。在具有多个显示屏的系统上,使用主显示屏。从
GraphicsConfiguration
和GraphicsDevice
可以获得多屏幕感知显示尺寸。 -
-
返回:
- 此工具包的屏幕大小,以像素为单位。 抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
- GraphicsConfiguration.getBounds(), GraphicsDevice.getDisplayMode(), GraphicsEnvironment.isHeadless()
getScreenResolution
public abstract int getScreenResolution()
throws HeadlessException
-
返回屏幕分辨率,以每英寸的点数为单位。
-
-
返回:
- 此工具包的屏幕分辨率,以每英寸的点数为单位。 抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
- GraphicsEnvironment.isHeadless()
getScreenInsets
public Insets getScreenInsets(GraphicsConfiguration gc)
throws HeadlessException
-
获得屏幕的 insets。
-
-
参数:
-
gc
- 一个GraphicsConfiguration
返回:
- 此工具包屏幕的 insets,以像素为单位。 抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.4 另请参见:
- GraphicsEnvironment.isHeadless()
-
getColorModel
public abstract ColorModel getColorModel()
throws HeadlessException
-
确定此工具包屏幕的颜色模型。
ColorModel
是一个抽象类,封装了图像的像素值及其红色、绿色、蓝色和 alpha 组件之间的转换能力。此工具包方法由
Component
类的getColorModel
方法调用。 -
-
返回:
- 此工具包屏幕的颜色模型。 抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
另请参见:
- GraphicsEnvironment.isHeadless(), ColorModel, Component.getColorModel()
getFontList
@Deprecated public abstract String[] getFontList()
-
已过时。
请参阅 GraphicsEnvironment.getAvailableFontFamilyNames()
-
返回此工具包中可用字体的名称。
在 1.1 中,以下字体名称已经过时,括号内是替代名称:
- TimesRoman(使用 Serif 替代)
- Helvetica(使用 SansSerif 替代)
- Courier(使用 Monospaced 替代)
在 1.1 中字体名称 ZapfDingbats 也已经过时,但 Unicode 中定义的字符从 0x2700 开始。从 1.1 开始,Java 支持这些字符。
-
-
返回:
- 此工具包中可用字体的名称。 另请参见:
- GraphicsEnvironment.getAvailableFontFamilyNames()
getFontMetrics
@Deprecated public abstract FontMetrics getFontMetrics(Font font)
-
已过时。
从 JDK version 1.2 开始,由
Font
方法getLineMetrics
取代。 -
获取呈现字体的屏幕设备规格。
-
-
参数:
-
font
- 字体
返回:
- 此工具包中指定字体的屏幕规格 另请参见:
- LineMetrics, Font.getLineMetrics(java.lang.String, java.awt.font.FontRenderContext), GraphicsEnvironment.getScreenDevices()
-
sync
public abstract void sync()
-
同步此工具包的图形状态。某些窗口系统可能会缓存图形事件。
此方法确保显示是最新的。这在动画制作时很有用。
-
getDefaultToolkit
public static Toolkit getDefaultToolkit()
-
获取默认工具包。
如果名为
"java.awt.headless"
的系统属性被设置为true
,则使用Toolkit
的 headless 实现。如果不存在
"java.awt.headless"
或"java.awt.headless"
被设置为false
,且存在名为"awt.toolkit"
的系统属性,则该属性将被视为Toolkit
子类的名称;否则将使用特定于平台的默认Toolkit
实现。还可以使用 Sun 引用实现中指定的属性 'assistive_technologies' 将其他类加载到 VM 中,该属性是在 'accessibility.properties' 文件的一个行中指定的。形式是 "assistive_technologies=...",其中 "..." 是以逗号分隔的、要加载的辅助技术类的列表。每个类都以给定的顺序加载,并且要使用 Class.forName(class).newInstance() 创建每个类的单独实例。此操作在创建 AWT 工具包之后进行。所有错误都通过 AWTError 异常来处理。
-
-
返回:
- 默认工具包。 抛出:
-
AWTError
- 如果不能找到工具包,或者不能访问或实例化工具包。
getImage
public abstract Image getImage(String filename)
-
返回一幅图像,该图像从指定文件中获取像素数据,图像格式可以是 GIF、JPEG 或 PNG。底层工具包试图对具有相同文件名的多个请求返回相同的 Image。
因为便利
Image
对象共享所需的机制可能在一段不明确的时间内继续保存不再使用的图像,所以鼓励开发者在所有可能的地方使用 createImage 变体实现自己的图像缓存。 如果包含在指定文件中的图像数据发生了更改,则此方法返回的Image
对象仍然包含前一个调用之后从该文件加载的旧信息。 通过对返回的Image
调用 flush 方法,可以手动丢弃以前加载的信息。此方法首先检查是否安装了安全管理器。 如果安装了安全管理器,则该方法使用指定的文件调用安全管理器的
checkRead
方法,以确保允许访问该图像。 -
-
参数:
-
filename
- 以可识别文件格式包含像素数据的文件名。
返回:
- 从指定文件中获取像素数据的图像。 抛出:
-
SecurityException
- 如果存在安全管理器且其 checkListen 方法不允许该操作。
另请参见:
- createImage(java.lang.String)
-
getImage
public abstract Image getImage(URL url)
-
返回一幅图像,该图像从指定 URL 获取像素数据。通过指定 URL 引用的像素数据必须使用以下格式之一:GIF、JPEG 或 PNG。底层工具包试图对具有相同 URL 的多个请求返回相同的 Image。
因为便利
Image
对象共享所需的机制可能在一段不明确的时间内继续保存不再使用的图像,所以鼓励开发者在所有可能的地方使用 createImage 变体实现自己的图像缓存。 如果包含在指定 URL 中的图像数据发生了更改,则此方法返回的Image
对象仍然包含前一个调用之后从该 URL 加载的旧信息。 通过对返回的Image
调用 flush 方法,可以手动丢弃以前加载的信息。此方法首先检查是否安装了安全管理器。 如果安装了安全管理器,则该方法通过 url.openConnection().getPermission() 权限调用安全管理器的
checkRead
方法,以确保允许访问该图像。为了与 1.2 以前的安全管理器兼容,如果通过FilePermission
或SocketPermission
的访问被拒绝,而对应的 1.1 样式的 SecurityManager.checkXXX 也拒绝访问,则该方法抛出SecurityException
。 -
-
参数:
-
url
- 用来获取像素数据的 URL。
返回:
- 从指定 URL 获取像素数据的图像。 抛出:
-
SecurityException
- 如果存在安全管理器且其 checkPermission 方法不允许该操作。
另请参见:
- createImage(java.net.URL)
-
createImage
public abstract Image createImage(String filename)
-
返回从指定文件获取像素数据的图像。返回的 Image 是一个新对象,该对象不再由此方法的其他任何调用者或其 getImage 变体共享。
此方法首先检查是否安装了安全管理器。如果安装了安全管理器,则该方法使用指定的文件调用安全管理器的
checkRead
方法,以确保允许创建该图像。 -
-
参数:
-
filename
- 以可识别文件格式包含像素数据的文件名。
返回:
- 从指定文件获取像素数据的图像。 抛出:
-
SecurityException
- 如果存在安全管理器且其 checkRead 方法不允许该操作。
另请参见:
- getImage(java.lang.String)
-
createImage
public abstract Image createImage(URL url)
-
返回一幅图像,该图像从指定 URL 获取像素数据。返回的 Image 是一个新对象,该对象不再由此方法的其他任何调用者或其 getImage 变体共享。
此方法首先检查是否安装了安全管理器。如果安装了安全管理器,则该方法通过 url.openConnection().getPermission() 权限调用安全管理器的
checkPermission
方法,以确保允许创建图像。为了与 1.2 以前的安全管理器兼容,如果通过FilePermission
或SocketPermission
的访问被拒绝,而对应的 1.1 样式的 SecurityManager.checkXXX 也拒绝访问,则该方法抛出SecurityException
。 -
-
参数:
-
url
- 用来获取像素数据的 URL。
返回:
- 从指定 URL 获取像素数据的图像。 抛出:
-
SecurityException
- 如果存在安全管理器且其 checkPermission 方法不允许该操作。
另请参见:
- getImage(java.net.URL)
-
prepareImage
public abstract boolean prepareImage(Image image,
int width,
int height,
ImageObserver observer)
-
准备一个用于呈现的图像。
如果 width 和 height 参数的值均为
-1
,则此方法在默认屏幕上准备一个用于呈现的图像;否则此方法在默认屏幕上以指定宽度和高度准备一个用于呈现的图像。图像数据由另一个线程异步下载,并将生成适当缩放的图像屏幕表示形式。
此方法由组件的
prepareImage
方法调用。可在
ImageObserver
接口的定义中找到有关此方法返回的标志的信息。 -
-
参数:
-
image
- 准备屏幕显示的图像。 -
width
- 需要的屏幕显示宽度,或为-1
。 -
height
- 需要的屏幕显示高度,或为-1
。 -
observer
- 在准备图像时要通知的ImageObserver
对象。
返回:
-
如果已完全准备好了图像,则返回
true
;否则返回false
。
另请参见:
- Component.prepareImage(java.awt.Image, java.awt.image.ImageObserver), Component.prepareImage(java.awt.Image, int, int, java.awt.image.ImageObserver), ImageObserver
-
checkImage
public abstract int checkImage(Image image,
int width,
int height,
ImageObserver observer)
-
指示正准备显示的指定图像的构造状态。
如果 width 和 height 参数的值均为
-1
,则此方法返回此工具包中指定图像屏幕表示形式的构造状态。否则,此方法以指定宽度和高度返回图像缩放表示形式的构造状态。此方法不会导致开始加载图像。应用程序必须调用
prepareImage
来强制加载图像。此方法由组件的
checkImage
方法调用。可在
ImageObserver
接口的定义中找到有关此方法返回的标志的信息。 -
-
参数:
-
image
- 要检查状态的图像。 -
width
- 要检查状态的图像的缩放宽度,或为-1
。 -
height
- 要检查状态的图像的缩放高度,或为-1
。 -
observer
- 在准备图像时要通知的ImageObserver
对象。
返回:
-
当前可用图像数据的
ImageObserver
标志的逐位 OR。
另请参见:
- prepareImage(java.awt.Image, int, int, java.awt.image.ImageObserver), Component.checkImage(java.awt.Image, java.awt.image.ImageObserver), Component.checkImage(java.awt.Image, int, int, java.awt.image.ImageObserver), ImageObserver
-
createImage
public abstract Image createImage(ImageProducer producer)
-
使用指定的图像生成器创建一幅图像。
-
-
参数:
-
producer
- 要使用的图像生成器。
返回:
- 使用指定图像生成器创建的图像。 另请参见:
- Image, ImageProducer, Component.createImage(java.awt.image.ImageProducer)
-
createImage
public Image createImage(byte[] imagedata)
-
创建一幅图像,该图像对存储在指定字节数组中的图像进行解码。
数据必须使用此工具包支持的图像格式存储,比如 GIF 或 JPEG。
-
-
参数:
-
imagedata
- 字节数组,表示用受支持图像格式存储的图像数据。
返回:
- 一幅图像。 从以下版本开始:
- JDK1.1
-
createImage
public abstract Image createImage(byte[] imagedata,
int imageoffset,
int imagelength)
-
创建一幅图像,该图像对存储在指定字节数组中指定偏移量和长度处的图像进行解码。数据必须用受此工具包支持的图像格式存储,比如 GIF 或 JPEG。
-
-
参数:
-
imagedata
- 字节数组,表示用受支持图像格式存储的图像。 -
imageoffset
- 数组中数据开始的偏移量。 -
imagelength
- 数组中数据的长度。
返回:
- 一幅图像。 从以下版本开始:
- JDK1.1
-
getPrintJob
public abstract PrintJob getPrintJob(Frame frame,
String jobtitle,
Properties props)
-
获取一个
PrintJob
对象,该对象是在工具包平台上初始化某个打印操作的结果。此方法的每个实际实现都应该先检查是否安装了安全管理器。如果安装了安全管理器,则该方法应该调用安全管理器的
checkPrintJobAccess
方法,以确保允许初始化打印操作。如果使用checkPrintJobAccess
的默认实现(即未重写该方法),则将导致使用RuntimePermission("queuePrintJob")
权限调用安全管理器的checkPermission
方法。 -
-
参数:
-
frame
- 打印对话框的父容器。不能为 null。 -
jobtitle
- PrintJob 的标题。null 标题等同于 ""。 -
props
- 包含零个或更多属性的 Properties 对象。这些属性没有被标准化,并且在各个实现之间不一致。因此,要求作业和页面控制的 PrintJob 应该使用此方法带有 JobAttributes 和 PageAttributes 对象的版本。可以更新此对象来反映用户离开时的作业选择。可以为 null。
返回:
-
一个
PrintJob
对象;如果用户取消打印作业,则返回null
。
抛出:
-
NullPointerException
- 如果 frame 为 null。GraphicsEnvironment.isHeadless() 返回 true 时总是抛出此异常。 -
SecurityException
- 如果此线程不允许初始化打印作业请求
从以下版本开始:
- JDK1.1 另请参见:
- GraphicsEnvironment.isHeadless(), PrintJob, RuntimePermission
-
getPrintJob
public PrintJob getPrintJob(Frame frame,
String jobtitle,
JobAttributes jobAttributes,
PageAttributes pageAttributes)
-
获取一个
PrintJob
对象,该对象是在工具包平台上初始化某个打印操作的结果。此方法的每个实际实现都应该先检查是否安装了安全管理器。如果安装了安全管理器,则该方法应该调用安全管理器的
checkPrintJobAccess
方法,以确保允许初始化打印操作。如果使用checkPrintJobAccess
的默认实现(即未重写该方法),则将导致使用RuntimePermission("queuePrintJob")
权限调用安全管理器的checkPermission
方法。 -
-
参数:
-
frame
- 打印对话框的父级。当且仅当 jobAttributes 不为 null 且 jobAttributes.getDialog() 返回 JobAttributes.DialogType.NONE 或 JobAttributes.DialogType.COMMON 时,该参数可为 null。 -
jobtitle
- PrintJob 的标题。null 标题等同于 ""。 -
jobAttributes
- 控制 PrintJob 的作业属性集合。这些属性将被更新,以反映用户的选择,这概括在 JobAttributes 文档中。可以为 null。 -
pageAttributes
- 控制 PrintJob 的页面属性集合。这些属性将应用于作业中的每个页面。这些属性将被更新,以反映用户的选择,这概括在 PageAttributes 文档中。可以为 null。
返回:
-
一个
PrintJob
对象;如果用户取消打印作业,则返回null
。
抛出:
-
NullPointerException
- 如果 frame 为 null,并且 jobAttributes 为 null 或者 jobAttributes.getDialog() 返回 JobAttributes.DialogType.NATIVE。 -
IllegalArgumentException
- 如果 pageAttributes 通过馈送然后解析馈送这一过程来指定不同之处。如果此线程可访问文件系统且 jobAttributes 指定打印到文件,则出现以下情况时也将抛出该异常:指定目标文件存在但它是一个目录而不是常规文件;指定目标文件不存在但不能创建;指定目标文件由于某些其他原因无法打开。但是,在指定打印到文件的情况下,如果同时请求了显示对话框,那么用户将有机会选择一个文件并继续打印。在从此方法返回前,该对话框将保证选择的输出文件有效。GraphicsEnvironment.isHeadless() 返回 true 时总是抛出此异常。
-
SecurityException
- 如果此线程不允许初始化打印作业请求,或者 jobAttributes 指定打印到文件,并且此线程不允许访问该文件系统
从以下版本开始:
- 1.3 另请参见:
- PrintJob, GraphicsEnvironment.isHeadless(), RuntimePermission, JobAttributes, PageAttributes
-
beep
public abstract void beep()
-
发出一个音频嘟嘟声。
-
-
从以下版本开始:
- JDK1.1
getSystemClipboard
public abstract Clipboard getSystemClipboard()
throws HeadlessException
-
获取系统 Clipboard 的一个实例,该 Clipboard 可作为本机平台提供的剪贴板工具的接口。该剪贴板使数据能够在 Java 应用程序和使用本机剪贴板工具的本机应用程序之间传输。
除了 flavormap.properties 文件(或
AWT.DnD.flavorMapFileURL
Toolkit 属性指定的其他文件)中指定的所有格式之外,系统 Clipboard 的getTransferData()
方法返回的文本在以下 flavor 中是可用的:- DataFlavor.stringFlavor
- DataFlavor.plainTextFlavor(已过时)
java.awt.datatransfer.StringSelection
时,如果要求的 flavor 是DataFlavor.plainTextFlavor
或等价 flavor,则返回一个 Reader。 注:系统 Clipboard 针对DataFlavor.plainTextFlavor
和等价 DataFlavor 的getTransferData()
方法的行为与DataFlavor.plainTextFlavor
的定义是不一致的。因此,对DataFlavor.plainTextFlavor
和等价 flavor 的支持 已过时。此方法的每个实际实现都应该先检查是否安装了安全管理器。如果安装了安全管理器,则此方法应该调用安全管理器的
checkSystemClipboardAccess
方法,以确保可以访问系统剪贴板。如果使用checkSystemClipboardAccess
的默认实现(即未重写该方法),则将导致使用AWTPermission("accessClipboard")
权限调用安全管理器的checkPermission
方法。 -
-
返回:
- 系统 Clipboard 抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- JDK1.1 另请参见:
- GraphicsEnvironment.isHeadless(), Clipboard, StringSelection, DataFlavor.stringFlavor, DataFlavor.plainTextFlavor, Reader, AWTPermission
getSystemSelection
public Clipboard getSystemSelection()
throws HeadlessException
-
以
Clipboard
对象的形式获取系统选择的一个实例。这使应用程序能够读取和修改当前系统范围内的选择。无论用户在何时使用鼠标或键盘选择了文本,应用程序都要负责更新系统选择。通常,实现方式是在所有支持文本选择的
Component
上,以及传递给该Component
的FOCUS_GAINED
和FOCUS_LOST
事件之间安装一个FocusListener
,并在Component
内的选择发生更改时更新系统选择Clipboard
。恰当地更新系统选择确保了 Java 应用程序与本机应用程序和同时运行在系统上的其他 Java 应用程序正确交互。注意,java.awt.TextComponent
和javax.swing.text.JTextComponent
已支持此策略。在使用这些类及其子类时,开发人员不需要编写任何额外的代码。一些平台不支持系统选择
Clipboard
。在这些平台上,此方法将返回null
。在这种情况下,应用程序不再有责任更新系统选择Clipboard
(如上所述)。此方法的每个实际实现都应该先检查是否安装了
SecurityManager
。如果是安装了SecurityManager
,则应调用SecurityManager
的checkSystemClipboardAccess
方法,以确保可以访问系统剪贴板。如果使用checkSystemClipboardAccess
的默认实现(即如果未重写该方法),则将导致使用AWTPermission("accessClipboard")
权限调用SecurityManager
的checkPermission
方法。 -
-
返回:
-
以
Clipboard
形式返回系统选择,如果本机平台不支持系统选择Clipboard
,则返回null
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.4 另请参见:
- Clipboard, FocusListener, FocusEvent.FOCUS_GAINED, FocusEvent.FOCUS_LOST, TextComponent, JTextComponent, AWTPermission, GraphicsEnvironment.isHeadless()
-
以
getMenuShortcutKeyMask
public int getMenuShortcutKeyMask()
throws HeadlessException
-
确定哪一个修改键是菜单快捷方式的适当加速键。
菜单快捷方式嵌入在
MenuShortcut
类中,由MenuBar
类处理。默认情况下,此方法返回
Event.CTRL_MASK
。如果 Control 键不是正确的加速键,则工具包实现应该重写此方法。 -
-
返回:
-
此工具包中用于菜单快捷方式的
Event
类的修饰符掩码。
抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- JDK1.1 另请参见:
- GraphicsEnvironment.isHeadless(), MenuBar, MenuShortcut
-
此工具包中用于菜单快捷方式的
getLockingKeyState
public boolean getLockingKeyState(int keyCode)
throws UnsupportedOperationException
-
返回键盘上给定锁定键是否处于 "on" 状态。有效键代码是 VK_CAPS_LOCK、VK_NUM_LOCK、VK_SCROLL_LOCK 和 VK_KANA_LOCK。
-
-
抛出:
-
IllegalArgumentException
- 如果keyCode
不是有效键代码之一 -
UnsupportedOperationException
- 如果主机系统不允许以编程方式获取此键的状态,或者键盘没有此键 -
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.3 另请参见:
- GraphicsEnvironment.isHeadless()
-
setLockingKeyState
public void setLockingKeyState(int keyCode,
boolean on)
throws UnsupportedOperationException
-
设置键盘上给定锁定键的状态。有效键代码是 VK_CAPS_LOCK、VK_NUM_LOCK、VK_SCROLL_LOCK 和 VK_KANA_LOCK。
根据不同的平台,设置锁定键的状态可能涉及事件处理,因此不能立即通过 getLockingKeyState 观察到。
-
-
抛出:
-
IllegalArgumentException
- 如果keyCode
不是有效键代码之一 -
UnsupportedOperationException
- 如果主机系统不允许以编程方式设置此键的状态,或者键盘没有此键 -
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.3 另请参见:
- GraphicsEnvironment.isHeadless()
-
getNativeContainer
protected static Container getNativeContainer(Component c)
-
使本机同位体能够查询给定本机组件的本机容器(例如,直接父组件可以是轻量级的)。
-
createCustomCursor
public Cursor createCustomCursor(Image cursor,
Point hotSpot,
String name)
throws IndexOutOfBoundsException,
HeadlessException
-
创建一个新的自定义光标对象。如果要显示的图像无效,则隐藏光标(使其完全透明),并将热点 (hotspot) 设置为(0,0)。
注意,多帧图像是无效的,可能造成此方法被挂起。
-
-
参数:
-
cursor
- 激活光标时要显示的图像 -
hotSpot
- 大光标热点的 X 和 Y 坐标;hotSpot 值必须小于getBestCursorSize
返回的 Dimension -
name
- 光标的本地化描述,用于 Java Accessibility
抛出:
-
IndexOutOfBoundsException
- 如果 hotSpot 值超出光标边界 -
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.2 另请参见:
- GraphicsEnvironment.isHeadless()
-
getBestCursorSize
public Dimension getBestCursorSize(int preferredWidth,
int preferredHeight)
throws HeadlessException
-
返回最接近所需大小的受支持光标尺寸。无论所需的大小如何,只支持单个光标大小的系统将返回该大小。不支持自定义光标的系统返回的尺寸将是 0, 0。
注:如果使用的图像尺寸不符合受支持的大小(由此方法返回的尺寸),则 Toolkit 实现会试着将图像的大小调整为受支持的大小。因为转换低分辨率图像存在一些困难,所以不保证不受支持大小的光标图像的质量。因此建议调用此方法并使用合适的图像,从而不需要转换图像。
-
-
参数:
-
preferredWidth
- 组件将使用的首选光标宽度。 -
preferredHeight
- 组件将使用的首选光标高度。
返回:
- 最接近的受支持光标大小;如果 Toolkit 实现不支持自定义光标,则返回的尺寸为 0,0。 抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.2 另请参见:
- GraphicsEnvironment.isHeadless()
-
getMaximumCursorColors
public int getMaximumCursorColors()
throws HeadlessException
-
返回自定义光标调色板中 Toolkit 支持的最大颜色数。
注:如果图像调色板中使用的颜色超过所支持的最大颜色数,则 Toolkit 实现会试图将调色板所用颜色调整为最大颜色数。因为转换低分辨率图像存在一些困难,所以不保证颜色多于系统支持颜色的那些图像的质量。因此建议调用此方法并使用合适的图像,从而不需要转换图像。
-
-
返回:
- 最大颜色数;如果 Toolkit 实现不支持自定义光标,则返回零。 抛出:
-
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 true
从以下版本开始:
- 1.2 另请参见:
- GraphicsEnvironment.isHeadless()
isFrameStateSupported
public boolean isFrameStateSupported(int state)
throws HeadlessException
-
返回 Toolkit 是否支持
Frame
状态。此方法判断是否支持最大化或图标化的 UI。对于Frame.ICONIFIED|Frame.MAXIMIZED_VERT
之类的“复合”状态,该方法总是返回 false。换句话说,根据经验只有使用单窗体状态常量作为参数的查询才是有意义的。 -
-
参数:
-
state
- 指定的窗体状态常量之一。
返回:
-
如果此 Toolkit 实现支持窗体状态,则返回
true
;否则返回false
。
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless()
返回true
。
从以下版本开始:
- 1.4 另请参见:
- Frame.setExtendedState(int)
-
getProperty
public static String getProperty(String key,
String defaultValue)
-
获取具有指定键和默认值的属性。如果未找到属性,此方法将返回 defaultValue。
-
getSystemEventQueue
public final EventQueue getSystemEventQueue()
-
获取应用程序或 applet 的 EventQueue 实例。根据 Toolkit 实现,对于不同的 applet,可能返回不同的 EventQueue。所以 applet 不能假设此方法返回的 EventQueue 实例将由其他 applet 或系统共享。
如果存在安全管理器,则首先调用其
checkAwtEventQueueAccess
方法。如果使用checkAwtEventQueueAccess
的默认实现(即未重写该方法),则将导致使用AWTPermission("accessEventQueue")
权限调用安全管理器的checkPermission
方法。 -
-
返回:
-
EventQueue
对象
抛出:
-
SecurityException
- 如果存在安全管理器且其SecurityManager.checkAwtEventQueueAccess()
方法拒绝访问EventQueue
另请参见:
- AWTPermission
-
getSystemEventQueueImpl
protected abstract EventQueue getSystemEventQueueImpl()
-
获取应用程序或 applet 的
EventQueue
实例,不检查访问权。出于安全原因,只能从Toolkit
子类调用此方法。 -
-
返回:
-
EventQueue
对象
-
createDragSourceContextPeer
public abstract java.awt.dnd.peer.DragSourceContextPeer createDragSourceContextPeer(DragGestureEvent dge)
throws InvalidDnDOperationException
-
创建 DragSourceContext 的同位体。如果 GraphicsEnvironment.isHeadless() 返回 true,则总是抛出 InvalidDndOperationException。
-
-
抛出:
-
InvalidDnDOperationException
另请参见:
- GraphicsEnvironment.isHeadless()
-
createDragGestureRecognizer
public <T extends DragGestureRecognizer> T createDragGestureRecognizer(Class<T> abstractRecognizerClass,
DragSource ds,
Component c,
int srcActions,
DragGestureListener dgl)
-
创建所请求的抽象 DragGestureRecognizer 类的具体的、与平台有关的子类,并将它与指定的 DragSource、Component 和 DragGestureListener 关联。子类应该重写此方法,以提供自己的实现。
-
-
参数:
-
abstractRecognizerClass
- 所需识别器的抽象类 -
ds
- DragSource -
c
- DragGestureRecognizer 的 Component 目标 -
srcActions
- 允许用于该动作的操作 -
dgl
- DragGestureListener
返回:
- 新的对象或 null。如果 GraphicsEnvironment.isHeadless() 返回 true,则总是返回 null。 另请参见:
- GraphicsEnvironment.isHeadless()
-
getDesktopProperty
public final Object getDesktopProperty(String propertyName)
-
获取指定桌面属性的值。桌面属性是作为 Toolkit 全局变量资源的惟一指定值。通常它也是与底层平台有关的桌面设置的抽象表示形式。 有关 AWT 支持的桌面属性的更多信息,请参阅 AWT Desktop Properties。
-
setDesktopProperty
protected final void setDesktopProperty(String name,
Object newValue)
-
将指定桌面属性设置为指定值,并触发一个属性更改事件,以通知所有侦听器该值已更改。
-
lazilyLoadDesktopProperty
protected Object lazilyLoadDesktopProperty(String name)
-
一个对桌面属性值延迟计算的机会。
-
initializeDesktopProperties
protected void initializeDesktopProperties()
-
initializeDesktopProperties
-
addPropertyChangeListener
public void addPropertyChangeListener(String name,
PropertyChangeListener pcl)
-
为指定的桌面属性添加指定的属性更改侦听器。如果 pcl 为 null,则不抛出任何异常,且不执行任何操作。
-
-
参数:
-
name
- 要监听的属性的名称 -
pcl
- 属性更改侦听器
从以下版本开始:
- 1.2
-
removePropertyChangeListener
public void removePropertyChangeListener(String name,
PropertyChangeListener pcl)
-
为指定的桌面属性移除指定的属性更改侦听器。如果 pcl 为 null,则不抛出任何异常,且不执行任何操作。
-
-
参数:
-
name
- 要移除的属性的名称 -
pcl
- 属性更改侦听器
从以下版本开始:
- 1.2
-
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners()
-
返回在此工具包上所有已注册的属性更改侦听器所组成的数组。
-
-
返回:
-
此工具包的所有
PropertyChangeListener
;如果当前没有注册的属性更改侦听器,则返回一个空数组
从以下版本开始:
- 1.4
-
此工具包的所有
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
-
返回与指定属性关联的所有
PropertyChangeListener
所组成的数组。 -
-
参数:
-
propertyName
- 指定的属性
返回:
-
与指定属性关联的所有
PropertyChangeListener
;如果没有添加这样的侦听器,则返回一个空数组
从以下版本开始:
- 1.4
-
isAlwaysOnTopSupported
public boolean isAlwaysOnTopSupported()
-
返回此工具包是否支持 always-on-top 模式。要检测特定窗口是否支持 always-on-top 模式,请使用 Window.isAlwaysOnTopSupported()。
-
-
返回:
-
如果当前工具包支持 always-on-top 模式,则返回
true
;否则返回false
从以下版本开始:
- 1.6 另请参见:
- Window.isAlwaysOnTopSupported(), Window.setAlwaysOnTop(boolean)
-
如果当前工具包支持 always-on-top 模式,则返回
isModalityTypeSupported
public abstract boolean isModalityTypeSupported(Dialog.ModalityType modalityType)
-
返回此工具包是否支持给定的模式类型。如果创建了带有不受支持的模式类型的对话框,则使用
Dialog.ModalityType.MODELESS
。 -
-
参数:
-
modalityType
- 要检测是否受此工具包支持的模式类型
返回:
-
如果当前工具包支持给定模式类型,则返回
true
;否则返回false
从以下版本开始:
- 1.6 另请参见:
- Dialog.ModalityType, Dialog.getModalityType(), Dialog.setModalityType(java.awt.Dialog.ModalityType)
-
isModalExclusionTypeSupported
public abstract boolean isModalExclusionTypeSupported(Dialog.ModalExclusionType modalExclusionType)
-
返回此工具包是否支持给定的模式排斥类型。如果在窗口上设置了不受支持的模式排斥类型,则使用
Dialog.ModalExclusionType.NO_EXCLUDE
。 -
-
参数:
-
modalExclusionType
- 要检测是否受此工具包支持的模式排斥类型
返回:
-
如果当前工具包支持给定模式排斥类型,则返回
true
;否则返回false
从以下版本开始:
- 1.6 另请参见:
- Dialog.ModalExclusionType, Window.getModalExclusionType(), Window.setModalExclusionType(java.awt.Dialog.ModalExclusionType)
-
addAWTEventListener
public void addAWTEventListener(AWTEventListener listener,
long eventMask)
-
添加一个 AWTEventListener,以接收与给定
eventMask
一致的系统范围内指派的所有 AWTEvent。首先,如果存在安全管理器,则使用
AWTPermission("listenToAllAWTEvents")
权限调用checkPermission
方法。这可能导致 SecurityException 异常。eventMask
是要接收的事件类型的位掩码。它是通过对AWTEvent
中定义的事件掩码进行逐位 OR 得到的。注:对于一般的应用程序,不推荐使用事件侦听器,它只用于支持特定目的工具,包括支持可访问性、事件记录/回放和诊断跟踪。如果 listener 为 null,则不抛出任何异常,且不执行任何操作。
-
-
参数:
-
listener
- 事件侦听器。 -
eventMask
- 要接收的事件类型的位掩码
抛出:
-
SecurityException
- 如果存在安全管理器且其checkPermission
方法不允许进行此操作。
从以下版本开始:
- 1.2 另请参见:
- removeAWTEventListener(java.awt.event.AWTEventListener), getAWTEventListeners(), SecurityManager.checkPermission(java.security.Permission), AWTEvent, AWTPermission, AWTEventListener, AWTEventListenerProxy
-
removeAWTEventListener
public void removeAWTEventListener(AWTEventListener listener)
-
从正接收的指派 AWTEvent 中移除一个 AWTEventListener。
首先,如果存在安全管理器,则使用
AWTPermission("listenToAllAWTEvents")
权限调用checkPermission
方法。这可能导致 SecurityException 异常。注:对于一般的应用程序,不推荐使用事件侦听器,它只用于支持特定目的工具,包括支持可访问性、事件记录/回放和诊断跟踪。如果 listener 为 null,则不抛出任何异常,且不执行任何操作。
-
-
参数:
-
listener
- 事件侦听器。
抛出:
-
SecurityException
- 如果存在安全管理器且其checkPermission
方法不允许进行此操作。
从以下版本开始:
- 1.2 另请参见:
- addAWTEventListener(java.awt.event.AWTEventListener, long), getAWTEventListeners(), SecurityManager.checkPermission(java.security.Permission), AWTEvent, AWTPermission, AWTEventListener, AWTEventListenerProxy
-
getAWTEventListeners
public AWTEventListener[] getAWTEventListeners()
-
返回在此工具包上所有已注册
AWTEventListener
所组成的数组。如果存在安全管理器,则使用AWTPermission("listenToAllAWTEvents")
权限调用它的checkPermission
方法。这可能导致 SecurityException 异常。侦听器可以在AWTEventListenerProxy
对象中返回,该对象还包含给定侦听器的事件掩码。注意,多次添加的侦听器对象在返回数组中只出现一次。 -
-
返回:
-
所有
AWTEventListener
;如果当前没有已注册侦听器,则返回一个空数组
抛出:
-
SecurityException
- 如果存在安全管理器且其checkPermission
方法不允许进行此操作。
从以下版本开始:
- 1.4 另请参见:
- addAWTEventListener(java.awt.event.AWTEventListener, long), removeAWTEventListener(java.awt.event.AWTEventListener), SecurityManager.checkPermission(java.security.Permission), AWTEvent, AWTPermission, AWTEventListener, AWTEventListenerProxy
-
所有
getAWTEventListeners
public AWTEventListener[] getAWTEventListeners(long eventMask)
-
返回已在此工具包上注册的所有
AWTEventListener
所组成的数组,这些侦听器侦听用eventMask
参数指定的所有事件类型。如果存在安全管理器,则使用AWTPermission("listenToAllAWTEvents")
权限调用它的checkPermission
方法。这可能导致 SecurityException 异常。侦听器可以在AWTEventListenerProxy
对象中返回,该对象还包含给定侦听器的事件掩码。注意,多次添加的侦听器对象在返回数组中只出现一次。 -
-
参数:
-
eventMask
- 要监听的事件类型的位掩码
返回:
-
已在此工具包上为指定事件类型注册的所有
AWTEventListener
;如果当前没有这样的已注册侦听器,则返回一个空数组
抛出:
-
SecurityException
- 如果存在安全管理器且其checkPermission
方法不允许该操作。
从以下版本开始:
- 1.4 另请参见:
- addAWTEventListener(java.awt.event.AWTEventListener, long), removeAWTEventListener(java.awt.event.AWTEventListener), SecurityManager.checkPermission(java.security.Permission), AWTEvent, AWTPermission, AWTEventListener, AWTEventListenerProxy
-
mapInputMethodHighlight
public abstract Map<TextAttribute,?> mapInputMethodHighlight(InputMethodHighlight highlight)
throws HeadlessException
-
返回给定输入方法高亮区的抽象级别描述的可视属性映射,如果不存在映射关系,则返回 null。输入方法高亮区的样式字段被忽略。返回的映射是不可修改的。
-
-
参数:
-
highlight
- 输入方法高亮区
返回:
-
样式属性映射,或者返回
null
抛出:
-
HeadlessException
- 如果GraphicsEnvironment.isHeadless
返回 true
从以下版本开始:
- 1.3 另请参见:
- GraphicsEnvironment.isHeadless()
-