- java.lang.Object
-
- java.awt.datatransfer.Clipboard
-
public class Clipboard extends Object
实现使用剪切/复制/粘贴操作传输数据的机制的类。FlavorListener可能会在Clipboard类的实例上注册,以通知关于此剪贴板上可用的一组DataFlavors的更改(请参阅addFlavorListener(java.awt.datatransfer.FlavorListener))。- 从以下版本开始:
- 1.1
- 另请参见:
-
Toolkit.getSystemClipboard(),Toolkit.getSystemSelection()
-
-
Field Summary
Fields Modifier and Type Field 描述 protected Transferablecontents剪贴板的内容。protected ClipboardOwnerowner剪贴板的所有者。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 voidaddFlavorListener(FlavorListener listener)注册指定的FlavorListener从此剪贴板接收FlavorEvents。DataFlavor[]getAvailableDataFlavors()返回一个DataFlavor秒的数组,其中可以提供此剪贴板的当前内容。TransferablegetContents(Object requestor)返回表示剪贴板当前内容的可转移对象。ObjectgetData(DataFlavor flavor)在指定的DataFlavor返回表示此剪贴板当前内容的对象。FlavorListener[]getFlavorListeners()返回当前在此Clipboard上注册的所有FlavorListener的数组。StringgetName()返回此剪贴板对象的名称。booleanisDataFlavorAvailable(DataFlavor flavor)返回是否可以在指定的DataFlavor提供此剪贴板的当前内容。voidremoveFlavorListener(FlavorListener listener)删除指定的FlavorListener,使其不再从此Clipboard接收FlavorEvents。voidsetContents(Transferable contents, ClipboardOwner owner)将剪贴板的当前内容设置为指定的可转移对象,并将指定的剪贴板所有者注册为新内容的所有者。
-
-
-
字段详细信息
-
owner
protected ClipboardOwner owner
剪贴板的所有者。
-
contents
protected Transferable contents
剪贴板的内容。
-
-
构造方法详细信息
-
Clipboard
public Clipboard(String name)
创建剪贴板对象。- 参数
-
name- 为剪贴板 - 另请参见:
-
Toolkit.getSystemClipboard()
-
-
方法详细信息
-
getName
public String getName()
返回此剪贴板对象的名称。- 结果
- 该剪贴板对象的名称
- 另请参见:
-
Toolkit.getSystemClipboard()
-
setContents
public void setContents(Transferable contents, ClipboardOwner owner)
将剪贴板的当前内容设置为指定的可转移对象,并将指定的剪贴板所有者注册为新内容的所有者。如果现有拥有者与参数
owner不同,则通知该拥有者不再通过调用该拥有者的ClipboardOwner.lostOwnership()来保存剪贴板内容的所有权。 一个setContents()的实现是lostOwnership()直接从这个方法调用lostOwnership()。 例如,可以稍后在不同的线程上调用lostOwnership()。 同样适用于在此剪贴板上注册的FlavorListener。如果剪贴板当前不可用,该方法将抛出
IllegalStateException。 例如,在某些平台上,系统剪贴板在被其他应用程序访问时不可用。- 参数
-
contents- 表示剪贴板内容的可转移对象 -
owner- 拥有剪贴板内容的对象 - 异常
-
IllegalStateException- 如果剪贴板当前不可用 - 另请参见:
-
Toolkit.getSystemClipboard()
-
getContents
public Transferable getContents(Object requestor)
返回表示剪贴板当前内容的可转移对象。 如果剪贴板当前没有内容,它将返回null。 当前未使用参数对象请求者。 如果剪贴板当前不可用,该方法将抛出IllegalStateException。 例如,在某些平台上,系统剪贴板在被其他应用程序访问时不可用。- 参数
-
requestor- 请求剪辑数据的对象(未使用) - 结果
- 剪贴板上的当前可转移对象
- 异常
-
IllegalStateException- 如果剪贴板当前不可用 - 另请参见:
-
Toolkit.getSystemClipboard()
-
getAvailableDataFlavors
public DataFlavor[] getAvailableDataFlavors()
返回一个DataFlavors的数组,其中可以提供此剪贴板的当前内容。 如果没有DataFlavor可用,则此方法返回零长度数组。- 结果
-
一个
DataFlavor的阵列,其中可以提供此剪贴板的当前内容 - 异常
-
IllegalStateException- 如果此剪贴板当前不可用 - 从以下版本开始:
- 1.5
-
isDataFlavorAvailable
public boolean isDataFlavorAvailable(DataFlavor flavor)
返回是否可以在指定的DataFlavor提供此剪贴板的当前内容。- 参数
-
flavor- 请求的DataFlavor的内容 - 结果
-
true如果此剪贴板的当前内容可以在指定的DataFlavor; 否则为false - 异常
-
NullPointerException- 如果flavor是null -
IllegalStateException- 如果此剪贴板当前不可用 - 从以下版本开始:
- 1.5
-
getData
public Object getData(DataFlavor flavor) throws UnsupportedFlavorException, IOException
在指定的DataFlavor返回表示此剪贴板当前内容的对象。 返回的对象的类由flavor的表示类定义。- 参数
-
flavor- 要求的DataFlavor的内容 - 结果
-
表示该指定的
DataFlavor中此剪贴板的当前内容的对象 - 异常
-
NullPointerException- 如果flavor是null -
IllegalStateException- 如果此剪贴板当前不可用 -
UnsupportedFlavorException- 如果请求的DataFlavor不可用 -
IOException- 如果无法检索请求的DataFlavor的数据 - 从以下版本开始:
- 1.5
- 另请参见:
-
DataFlavor.getRepresentationClass()
-
addFlavorListener
public void addFlavorListener(FlavorListener listener)
注册指定的FlavorListener以从此剪贴板接收FlavorEvents。 如果listener为null,则不会抛出任何异常,也不会执行任何操作。- 参数
-
listener- 要添加的侦听器 - 从以下版本开始:
- 1.5
- 另请参见:
-
removeFlavorListener(java.awt.datatransfer.FlavorListener),getFlavorListeners(),FlavorListener,FlavorEvent
-
removeFlavorListener
public void removeFlavorListener(FlavorListener listener)
删除指定的FlavorListener,使其不再从此Clipboard接收FlavorEvents。 如果由参数指定的侦听器以前未添加到此Clipboard,则此方法不执行任何功能,也不会抛出异常。 如果listener为null,则不会抛出异常,也不会执行任何操作。- 参数
-
listener- 要删除的侦听器 - 从以下版本开始:
- 1.5
- 另请参见:
-
addFlavorListener(java.awt.datatransfer.FlavorListener),getFlavorListeners(),FlavorListener,FlavorEvent
-
getFlavorListeners
public FlavorListener[] getFlavorListeners()
返回当前在该Clipboard上注册的所有FlavorListener的数组。- 结果
-
所有这个剪贴板的
FlavorListeners或一个空数组,如果没有监听器当前注册 - 从以下版本开始:
- 1.5
- 另请参见:
-
addFlavorListener(java.awt.datatransfer.FlavorListener),removeFlavorListener(java.awt.datatransfer.FlavorListener),FlavorListener,FlavorEvent
-
-