©
本文档使用 PHP中文网手册 发布
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.awt.Toolkit
public abstract class Toolkit
此类是所有 Abstract Window Toolkit 实际实现的抽象超类。Toolkit
的子类被用于将各种组件绑定到特定本机工具包实现。
许多 GUI 操作可以异步执行。这意味着如果设置某一组件的状态,随后立刻查询该状态,则返回的值可能并没有反映所请求的更改。这包括但不局限于以下操作:
ScrollPane.setScrollPosition
并随后调用 getScrollPosition
可能返回一个不正确的值。
Window
、Frame
或 Dialog
调用 setVisible(true)
可能异步发生。
Window
、Frame
或 Dialog
调用 setSize
、setBounds
或 setLocation
将被转发到底层窗口管理系统,并可能被忽略或修改。有关更多信息,请参阅 Window
。
大多数应用程序不应直接调用该类中的任何方法。Toolkit
定义的方法是一种“胶水”,将 java.awt
包中与平台无关的类与 java.awt.peer
中的对应物连接起来。Toolkit
定义的一些方法能直接查询本机操作系统。
字段摘要 | |
---|---|
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 |
字段详细信息 |
---|
protected final Map<String,Object> desktopProperties
protected final PropertyChangeSupport desktopPropsSupport
构造方法详细信息 |
---|
public Toolkit()
方法详细信息 |
---|
protected abstract java.awt.peer.DesktopPeer createDesktopPeer(Desktop target) throws HeadlessException
Desktop
实现。
target
- 要实现的 Desktop
Desktop
实现
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Desktop
,
DesktopPeer
protected abstract java.awt.peer.ButtonPeer createButton(Button target) throws HeadlessException
Button
实现。
target
- 要实现的按钮。
Button
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Button
,
ButtonPeer
protected abstract java.awt.peer.TextFieldPeer createTextField(TextField target) throws HeadlessException
TextField
实现。
target
- 要实现的文本字段。
TextField
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
TextField
,
TextFieldPeer
protected abstract java.awt.peer.LabelPeer createLabel(Label target) throws HeadlessException
Label
实现。
target
- 要实现的标签。
Label
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Label
,
LabelPeer
protected abstract java.awt.peer.ListPeer createList(List target) throws HeadlessException
List
实现。
target
- 要实现的列表。
List
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
List
,
ListPeer
protected abstract java.awt.peer.CheckboxPeer createCheckbox(Checkbox target) throws HeadlessException
Checkbox
实现。
target
- 要实现的复选框。
Checkbox
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Checkbox
,
CheckboxPeer
protected abstract java.awt.peer.ScrollbarPeer createScrollbar(Scrollbar target) throws HeadlessException
Scrollbar
实现。
target
- 要实现的滚动条。
Scrollbar
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Scrollbar
,
ScrollbarPeer
protected abstract java.awt.peer.ScrollPanePeer createScrollPane(ScrollPane target) throws HeadlessException
ScrollPane
实现。
target
- 要实现的滚动窗格。
ScrollPane
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
ScrollPane
,
ScrollPanePeer
protected abstract java.awt.peer.TextAreaPeer createTextArea(TextArea target) throws HeadlessException
TextArea
实现。
target
- 要实现的文本字区域。
TextArea
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
TextArea
,
TextAreaPeer
protected abstract java.awt.peer.ChoicePeer createChoice(Choice target) throws HeadlessException
Choice
实现。
target
- 要实现的选择。
Choice
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Choice
,
ChoicePeer
protected abstract java.awt.peer.FramePeer createFrame(Frame target) throws HeadlessException
Frame
实现。
target
- 要实现的窗体。
Frame
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Frame
,
FramePeer
protected abstract java.awt.peer.CanvasPeer createCanvas(Canvas target)
Canvas
实现。
target
- 要实现的画布。
Canvas
实现。Canvas
,
CanvasPeer
protected abstract java.awt.peer.PanelPeer createPanel(Panel target)
Panel
实现。
target
- 要实现的面板。
Panel
实现。Panel
,
PanelPeer
protected abstract java.awt.peer.WindowPeer createWindow(Window target) throws HeadlessException
Window
实现。
target
- 要实现的窗口。
Window
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Window
,
WindowPeer
protected abstract java.awt.peer.DialogPeer createDialog(Dialog target) throws HeadlessException
Dialog
实现。
target
- 要实现的对话框。
Dialog
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Dialog
,
DialogPeer
protected abstract java.awt.peer.MenuBarPeer createMenuBar(MenuBar target) throws HeadlessException
MenuBar
实现。
target
- 要实现的菜单栏。
MenuBar
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
MenuBar
,
MenuBarPeer
protected abstract java.awt.peer.MenuPeer createMenu(Menu target) throws HeadlessException
Menu
实现。
target
- 要实现的菜单。
Menu
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Menu
,
MenuPeer
protected abstract java.awt.peer.PopupMenuPeer createPopupMenu(PopupMenu target) throws HeadlessException
PopupMenu
实现。
target
- 要实现的弹出菜单。
PopupMenu
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
PopupMenu
,
PopupMenuPeer
protected abstract java.awt.peer.MenuItemPeer createMenuItem(MenuItem target) throws HeadlessException
MenuItem
实现。
target
- 要实现的菜单项。
MenuItem
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
MenuItem
,
MenuItemPeer
protected abstract java.awt.peer.FileDialogPeer createFileDialog(FileDialog target) throws HeadlessException
FileDialog
实现。
target
- 要实现的文件对话框。
FileDialog
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
FileDialog
,
FileDialogPeer
protected abstract java.awt.peer.CheckboxMenuItemPeer createCheckboxMenuItem(CheckboxMenuItem target) throws HeadlessException
CheckboxMenuItem
实现。
target
- 要实现的复选菜单项。
CheckboxMenuItem
实现。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
CheckboxMenuItem
,
CheckboxMenuItemPeer
protected java.awt.peer.MouseInfoPeer getMouseInfoPeer()
MouseInfo
实现。
MouseInfo
的帮助器实现
UnsupportedOperationException
- 如果没有实现此操作MouseInfoPeer
,
MouseInfo
protected java.awt.peer.LightweightPeer createComponent(Component target)
target
- 要创建的 Component。@Deprecated protected abstract java.awt.peer.FontPeer getFontPeer(String name, int style)
Font
实现。
name
- 要实现的字体style
- 字体样式,比如 PLAIN
、BOLD
、ITALIC
或它们的组合
Font
实现Font
,
FontPeer
,
GraphicsEnvironment.getAllFonts()
protected void loadSystemColors(int[] systemColors) throws HeadlessException
systemColors
- 一个整数数组。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
public void setDynamicLayout(boolean dynamic) throws HeadlessException
dynamic
- 如果该参数为 true,则在调整 Container 大小时重新布置其组件。如果该参数为 false,则布局将在重新调整大小后生效。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueisDynamicLayoutSet()
,
isDynamicLayoutActive()
,
getDesktopProperty(String propertyName)
,
GraphicsEnvironment.isHeadless()
protected boolean isDynamicLayoutSet() throws HeadlessException
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 truesetDynamicLayout(boolean dynamic)
,
isDynamicLayoutActive()
,
getDesktopProperty(String propertyName)
,
GraphicsEnvironment.isHeadless()
public boolean isDynamicLayoutActive() throws HeadlessException
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 truesetDynamicLayout(boolean dynamic)
,
isDynamicLayoutSet()
,
getDesktopProperty(String propertyName)
,
GraphicsEnvironment.isHeadless()
public abstract Dimension getScreenSize() throws HeadlessException
GraphicsConfiguration
和 GraphicsDevice
可以获得多屏幕感知显示尺寸。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsConfiguration.getBounds()
,
GraphicsDevice.getDisplayMode()
,
GraphicsEnvironment.isHeadless()
public abstract int getScreenResolution() throws HeadlessException
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
public Insets getScreenInsets(GraphicsConfiguration gc) throws HeadlessException
gc
- 一个 GraphicsConfiguration
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
public abstract ColorModel getColorModel() throws HeadlessException
ColorModel
是一个抽象类,封装了图像的像素值及其红色、绿色、蓝色和 alpha 组件之间的转换能力。
此工具包方法由 Component
类的 getColorModel
方法调用。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
ColorModel
,
Component.getColorModel()
@Deprecated public abstract String[] getFontList()
GraphicsEnvironment.getAvailableFontFamilyNames()
在 1.1 中,以下字体名称已经过时,括号内是替代名称:
在 1.1 中字体名称 ZapfDingbats 也已经过时,但 Unicode 中定义的字符从 0x2700 开始。从 1.1 开始,Java 支持这些字符。
GraphicsEnvironment.getAvailableFontFamilyNames()
@Deprecated public abstract FontMetrics getFontMetrics(Font font)
Font
方法 getLineMetrics
取代。
font
- 字体
LineMetrics
,
Font.getLineMetrics(java.lang.String, java.awt.font.FontRenderContext)
,
GraphicsEnvironment.getScreenDevices()
public abstract void sync()
此方法确保显示是最新的。这在动画制作时很有用。
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
- 如果不能找到工具包,或者不能访问或实例化工具包。public abstract Image getImage(String filename)
因为便利 Image
对象共享所需的机制可能在一段不明确的时间内继续保存不再使用的图像,所以鼓励开发者在所有可能的地方使用 createImage
变体实现自己的图像缓存。
如果包含在指定文件中的图像数据发生了更改,则此方法返回的 Image
对象仍然包含前一个调用之后从该文件加载的旧信息。
通过对返回的 Image
调用 flush
方法,可以手动丢弃以前加载的信息。
此方法首先检查是否安装了安全管理器。
如果安装了安全管理器,则该方法使用指定的文件调用安全管理器的 checkRead
方法,以确保允许访问该图像。
filename
- 以可识别文件格式包含像素数据的文件名。
SecurityException
- 如果存在安全管理器且其 checkListen 方法不允许该操作。createImage(java.lang.String)
public abstract Image getImage(URL url)
因为便利 Image
对象共享所需的机制可能在一段不明确的时间内继续保存不再使用的图像,所以鼓励开发者在所有可能的地方使用 createImage
变体实现自己的图像缓存。
如果包含在指定 URL 中的图像数据发生了更改,则此方法返回的 Image
对象仍然包含前一个调用之后从该 URL 加载的旧信息。
通过对返回的 Image
调用 flush
方法,可以手动丢弃以前加载的信息。
此方法首先检查是否安装了安全管理器。
如果安装了安全管理器,则该方法通过 url.openConnection().getPermission() 权限调用安全管理器的 checkRead
方法,以确保允许访问该图像。为了与 1.2 以前的安全管理器兼容,如果通过 FilePermission
或 SocketPermission
的访问被拒绝,而对应的 1.1 样式的 SecurityManager.checkXXX 也拒绝访问,则该方法抛出 SecurityException
。
url
- 用来获取像素数据的 URL。
SecurityException
- 如果存在安全管理器且其 checkPermission 方法不允许该操作。createImage(java.net.URL)
public abstract Image createImage(String filename)
此方法首先检查是否安装了安全管理器。如果安装了安全管理器,则该方法使用指定的文件调用安全管理器的 checkRead
方法,以确保允许创建该图像。
filename
- 以可识别文件格式包含像素数据的文件名。
SecurityException
- 如果存在安全管理器且其 checkRead 方法不允许该操作。getImage(java.lang.String)
public abstract Image createImage(URL url)
此方法首先检查是否安装了安全管理器。如果安装了安全管理器,则该方法通过 url.openConnection().getPermission() 权限调用安全管理器的 checkPermission
方法,以确保允许创建图像。为了与 1.2 以前的安全管理器兼容,如果通过 FilePermission
或 SocketPermission
的访问被拒绝,而对应的 1.1 样式的 SecurityManager.checkXXX 也拒绝访问,则该方法抛出 SecurityException
。
url
- 用来获取像素数据的 URL。
SecurityException
- 如果存在安全管理器且其 checkPermission 方法不允许该操作。getImage(java.net.URL)
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
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
public abstract Image createImage(ImageProducer producer)
producer
- 要使用的图像生成器。
Image
,
ImageProducer
,
Component.createImage(java.awt.image.ImageProducer)
public Image createImage(byte[] imagedata)
数据必须使用此工具包支持的图像格式存储,比如 GIF 或 JPEG。
imagedata
- 字节数组,表示用受支持图像格式存储的图像数据。
public abstract Image createImage(byte[] imagedata, int imageoffset, int imagelength)
imagedata
- 字节数组,表示用受支持图像格式存储的图像。imageoffset
- 数组中数据开始的偏移量。imagelength
- 数组中数据的长度。
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
- 如果此线程不允许初始化打印作业请求GraphicsEnvironment.isHeadless()
,
PrintJob
,
RuntimePermission
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 指定打印到文件,并且此线程不允许访问该文件系统PrintJob
,
GraphicsEnvironment.isHeadless()
,
RuntimePermission
,
JobAttributes
,
PageAttributes
public abstract void beep()
public abstract Clipboard getSystemClipboard() throws HeadlessException
除了 flavormap.properties 文件(或 AWT.DnD.flavorMapFileURL
Toolkit 属性指定的其他文件)中指定的所有格式之外,系统 Clipboard 的 getTransferData()
方法返回的文本在以下 flavor 中是可用的:
java.awt.datatransfer.StringSelection
时,如果要求的 flavor 是 DataFlavor.plainTextFlavor
或等价 flavor,则返回一个 Reader。注:系统 Clipboard 针对 DataFlavor.plainTextFlavor
和等价 DataFlavor 的 getTransferData()
方法的行为与 DataFlavor.plainTextFlavor
的定义是不一致的。因此,对 DataFlavor.plainTextFlavor
和等价 flavor 的支持已过时。
此方法的每个实际实现都应该先检查是否安装了安全管理器。如果安装了安全管理器,则此方法应该调用安全管理器的 checkSystemClipboardAccess
方法,以确保可以访问系统剪贴板。如果使用 checkSystemClipboardAccess
的默认实现(即未重写该方法),则将导致使用 AWTPermission("accessClipboard")
权限调用安全管理器的 checkPermission
方法。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
Clipboard
,
StringSelection
,
DataFlavor.stringFlavor
,
DataFlavor.plainTextFlavor
,
Reader
,
AWTPermission
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() 返回 trueClipboard
,
FocusListener
,
FocusEvent.FOCUS_GAINED
,
FocusEvent.FOCUS_LOST
,
TextComponent
,
JTextComponent
,
AWTPermission
,
GraphicsEnvironment.isHeadless()
public int getMenuShortcutKeyMask() throws HeadlessException
菜单快捷方式嵌入在 MenuShortcut
类中,由 MenuBar
类处理。
默认情况下,此方法返回 Event.CTRL_MASK
。如果 Control 键不是正确的加速键,则工具包实现应该重写此方法。
Event
类的修饰符掩码。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
,
MenuBar
,
MenuShortcut
public boolean getLockingKeyState(int keyCode) throws UnsupportedOperationException
VK_CAPS_LOCK
、VK_NUM_LOCK
、VK_SCROLL_LOCK
和 VK_KANA_LOCK
。
IllegalArgumentException
- 如果 keyCode
不是有效键代码之一
UnsupportedOperationException
- 如果主机系统不允许以编程方式获取此键的状态,或者键盘没有此键
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
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() 返回 trueGraphicsEnvironment.isHeadless()
protected static Container getNativeContainer(Component c)
public Cursor createCustomCursor(Image cursor, Point hotSpot, String name) throws IndexOutOfBoundsException, HeadlessException
注意,多帧图像是无效的,可能造成此方法被挂起。
cursor
- 激活光标时要显示的图像hotSpot
- 大光标热点的 X 和 Y 坐标;hotSpot 值必须小于 getBestCursorSize
返回的 Dimensionname
- 光标的本地化描述,用于 Java Accessibility
IndexOutOfBoundsException
- 如果 hotSpot 值超出光标边界
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
public Dimension getBestCursorSize(int preferredWidth, int preferredHeight) throws HeadlessException
注:如果使用的图像尺寸不符合受支持的大小(由此方法返回的尺寸),则 Toolkit 实现会试着将图像的大小调整为受支持的大小。因为转换低分辨率图像存在一些困难,所以不保证不受支持大小的光标图像的质量。因此建议调用此方法并使用合适的图像,从而不需要转换图像。
preferredWidth
- 组件将使用的首选光标宽度。preferredHeight
- 组件将使用的首选光标高度。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
public int getMaximumCursorColors() throws HeadlessException
注:如果图像调色板中使用的颜色超过所支持的最大颜色数,则 Toolkit 实现会试图将调色板所用颜色调整为最大颜色数。因为转换低分辨率图像存在一些困难,所以不保证颜色多于系统支持颜色的那些图像的质量。因此建议调用此方法并使用合适的图像,从而不需要转换图像。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless() 返回 trueGraphicsEnvironment.isHeadless()
public boolean isFrameStateSupported(int state) throws HeadlessException
Frame
状态。此方法判断是否支持最大化或图标化的 UI。对于 Frame.ICONIFIED|Frame.MAXIMIZED_VERT
之类的“复合”状态,该方法总是返回 false。换句话说,根据经验只有使用单窗体状态常量作为参数的查询才是有意义的。
state
- 指定的窗体状态常量之一。
true
;否则返回 false
。
HeadlessException
- 如果 GraphicsEnvironment.isHeadless()
返回 true
。Frame.setExtendedState(int)
public static String getProperty(String key, String defaultValue)
public final EventQueue getSystemEventQueue()
如果存在安全管理器,则首先调用其 checkAwtEventQueueAccess
方法。如果使用 checkAwtEventQueueAccess
的默认实现(即未重写该方法),则将导致使用 AWTPermission("accessEventQueue")
权限调用安全管理器的 checkPermission
方法。
EventQueue
对象
SecurityException
- 如果存在安全管理器且其 SecurityManager.checkAwtEventQueueAccess()
方法拒绝访问 EventQueue
AWTPermission
protected abstract EventQueue getSystemEventQueueImpl()
EventQueue
实例,不检查访问权。出于安全原因,只能从 Toolkit
子类调用此方法。
EventQueue
对象public abstract java.awt.dnd.peer.DragSourceContextPeer createDragSourceContextPeer(DragGestureEvent dge) throws InvalidDnDOperationException
InvalidDnDOperationException
GraphicsEnvironment.isHeadless()
public <T extends DragGestureRecognizer> T createDragGestureRecognizer(Class<T> abstractRecognizerClass, DragSource ds, Component c, int srcActions, DragGestureListener dgl)
abstractRecognizerClass
- 所需识别器的抽象类ds
- DragSourcec
- DragGestureRecognizer 的 Component 目标srcActions
- 允许用于该动作的操作dgl
- DragGestureListener
GraphicsEnvironment.isHeadless()
public final Object getDesktopProperty(String propertyName)
protected final void setDesktopProperty(String name, Object newValue)
protected Object lazilyLoadDesktopProperty(String name)
protected void initializeDesktopProperties()
public void addPropertyChangeListener(String name, PropertyChangeListener pcl)
name
- 要监听的属性的名称pcl
- 属性更改侦听器public void removePropertyChangeListener(String name, PropertyChangeListener pcl)
name
- 要移除的属性的名称pcl
- 属性更改侦听器public PropertyChangeListener[] getPropertyChangeListeners()
PropertyChangeListener
;如果当前没有注册的属性更改侦听器,则返回一个空数组public PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
PropertyChangeListener
所组成的数组。
propertyName
- 指定的属性
PropertyChangeListener
;如果没有添加这样的侦听器,则返回一个空数组public boolean isAlwaysOnTopSupported()
Window.isAlwaysOnTopSupported()
。
true
;否则返回 false
Window.isAlwaysOnTopSupported()
,
Window.setAlwaysOnTop(boolean)
public abstract boolean isModalityTypeSupported(Dialog.ModalityType modalityType)
Dialog.ModalityType.MODELESS
。
modalityType
- 要检测是否受此工具包支持的模式类型
true
;否则返回 false
Dialog.ModalityType
,
Dialog.getModalityType()
,
Dialog.setModalityType(java.awt.Dialog.ModalityType)
public abstract boolean isModalExclusionTypeSupported(Dialog.ModalExclusionType modalExclusionType)
Dialog.ModalExclusionType.NO_EXCLUDE
。
modalExclusionType
- 要检测是否受此工具包支持的模式排斥类型
true
;否则返回 false
Dialog.ModalExclusionType
,
Window.getModalExclusionType()
,
Window.setModalExclusionType(java.awt.Dialog.ModalExclusionType)
public void addAWTEventListener(AWTEventListener listener, long eventMask)
eventMask
一致的系统范围内指派的所有 AWTEvent。
首先,如果存在安全管理器,则使用 AWTPermission("listenToAllAWTEvents")
权限调用 checkPermission
方法。这可能导致 SecurityException 异常。
eventMask
是要接收的事件类型的位掩码。它是通过对 AWTEvent
中定义的事件掩码进行逐位 OR 得到的。
注:对于一般的应用程序,不推荐使用事件侦听器,它只用于支持特定目的工具,包括支持可访问性、事件记录/回放和诊断跟踪。如果 listener 为 null,则不抛出任何异常,且不执行任何操作。
listener
- 事件侦听器。eventMask
- 要接收的事件类型的位掩码
SecurityException
- 如果存在安全管理器且其 checkPermission
方法不允许进行此操作。removeAWTEventListener(java.awt.event.AWTEventListener)
,
getAWTEventListeners()
,
SecurityManager.checkPermission(java.security.Permission)
,
AWTEvent
,
AWTPermission
,
AWTEventListener
,
AWTEventListenerProxy
public void removeAWTEventListener(AWTEventListener listener)
首先,如果存在安全管理器,则使用 AWTPermission("listenToAllAWTEvents")
权限调用 checkPermission
方法。这可能导致 SecurityException 异常。
注:对于一般的应用程序,不推荐使用事件侦听器,它只用于支持特定目的工具,包括支持可访问性、事件记录/回放和诊断跟踪。如果 listener 为 null,则不抛出任何异常,且不执行任何操作。
listener
- 事件侦听器。
SecurityException
- 如果存在安全管理器且其 checkPermission
方法不允许进行此操作。addAWTEventListener(java.awt.event.AWTEventListener, long)
,
getAWTEventListeners()
,
SecurityManager.checkPermission(java.security.Permission)
,
AWTEvent
,
AWTPermission
,
AWTEventListener
,
AWTEventListenerProxy
public AWTEventListener[] getAWTEventListeners()
AWTEventListener
所组成的数组。如果存在安全管理器,则使用 AWTPermission("listenToAllAWTEvents")
权限调用它的 checkPermission
方法。这可能导致 SecurityException 异常。侦听器可以在 AWTEventListenerProxy
对象中返回,该对象还包含给定侦听器的事件掩码。注意,多次添加的侦听器对象在返回数组中只出现一次。
AWTEventListener
;如果当前没有已注册侦听器,则返回一个空数组
SecurityException
- 如果存在安全管理器且其 checkPermission
方法不允许进行此操作。addAWTEventListener(java.awt.event.AWTEventListener, long)
,
removeAWTEventListener(java.awt.event.AWTEventListener)
,
SecurityManager.checkPermission(java.security.Permission)
,
AWTEvent
,
AWTPermission
,
AWTEventListener
,
AWTEventListenerProxy
public AWTEventListener[] getAWTEventListeners(long eventMask)
AWTEventListener
所组成的数组,这些侦听器侦听用 eventMask
参数指定的所有事件类型。如果存在安全管理器,则使用 AWTPermission("listenToAllAWTEvents")
权限调用它的 checkPermission
方法。这可能导致 SecurityException 异常。侦听器可以在 AWTEventListenerProxy
对象中返回,该对象还包含给定侦听器的事件掩码。注意,多次添加的侦听器对象在返回数组中只出现一次。
eventMask
- 要监听的事件类型的位掩码
AWTEventListener
;如果当前没有这样的已注册侦听器,则返回一个空数组
SecurityException
- 如果存在安全管理器且其 checkPermission
方法不允许该操作。addAWTEventListener(java.awt.event.AWTEventListener, long)
,
removeAWTEventListener(java.awt.event.AWTEventListener)
,
SecurityManager.checkPermission(java.security.Permission)
,
AWTEvent
,
AWTPermission
,
AWTEventListener
,
AWTEventListenerProxy
public abstract Map<TextAttribute,?> mapInputMethodHighlight(InputMethodHighlight highlight) throws HeadlessException
highlight
- 输入方法高亮区
null
HeadlessException
- 如果 GraphicsEnvironment.isHeadless
返回 trueGraphicsEnvironment.isHeadless()
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。