java.awt.datatransfer

接口
异常
java.lang.Object
  继承者 java.awt.datatransfer.Clipboard

public class Clipboard
     
extends Object

此类实现一种使用剪切/复制/粘贴操作传输数据的机制。

FlavorListener 可以在 Clipboard 类的实例上注册,以接收对此剪贴板上可用的 DataFlavor 的集合更改的通知(参见 addFlavorListener(java.awt.datatransfer.FlavorListener))。

另请参见:
Toolkit.getSystemClipboard(), Toolkit.getSystemSelection()

字段摘要
protected  Transferable contents
           
protected  ClipboardOwner owner
           
 
构造方法摘要
Clipboard(String name)
          创建剪贴板对象。
 
方法摘要
 void addFlavorListener(FlavorListener listener)
          注册指定的 FlavorListener,以从此剪贴板接收 FlavorEvent
 DataFlavor[] getAvailableDataFlavors()
          返回 DataFlavor 的数组,其中提供了此剪贴板的当前内容。
 Transferable getContents(Object requestor)
          返回表示剪贴板当前内容的 transferable 对象。
 Object getData(DataFlavor flavor)
          返回一个对象,表示此剪贴板中指定 DataFlavor 类型的当前内容。
 FlavorListener[] getFlavorListeners()
          返回一组目前在此 Clipboard 上注册的所有 FlavorListener
 String getName()
          返回此剪贴板对象的名称。
 boolean isDataFlavorAvailable(DataFlavor flavor)
          返回是否能够以指定的 DataFlavor 形式提供此剪贴板的当前内容。
 void removeFlavorListener(FlavorListener listener)
          移除指定的 FlavorListener,使其不再从此 Clipboard 接收 FlavorEvent
 void setContents(Transferable contents, ClipboardOwner owner)
          将剪贴板的当前内容设置到指定的 transferable 对象,并将指定的剪贴板所有者作为新内容的所有者注册。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

owner

protected ClipboardOwner owner

contents

protected Transferable contents
构造方法详细信息

Clipboard

public Clipboard(String name)
创建剪贴板对象。

另请参见:
Toolkit.getSystemClipboard()
方法详细信息

getName

public String getName()
返回此剪贴板对象的名称。

另请参见:
Toolkit.getSystemClipboard()

setContents

public void setContents(Transferable contents,
                        ClipboardOwner owner)
将剪贴板的当前内容设置到指定的 transferable 对象,并将指定的剪贴板所有者作为新内容的所有者注册。

如果现有的所有者与参数 owner 不同,则该所有者将得到通知,它已不再保持剪贴板内容的所有关系,此操作是通过对该所有者调用 ClipboardOwner.lostOwnership() 完成的。setContents() 的实现可以不直接从此方法调用 lostOwnership()。例如,可以稍后在另一个线程上调用 lostOwnership()。在此剪贴板上注册的 FlavorListener 也是如此。

如果剪贴板当前不可用,则该方法抛出 IllegalStateException。例如,在某些平台上,系统剪贴板在被别的应用程序访问时是不可用的。

参数:
contents - 表示剪贴板内容的 transferable 对象
owner - 拥有剪贴板内容的对象
抛出:
IllegalStateException - 如果剪贴板当前不可用
另请参见:
Toolkit.getSystemClipboard()

getContents

public Transferable getContents(Object requestor)
返回表示剪贴板当前内容的 transferable 对象。如果剪贴板目前没有任何内容,则返回 null。目前没有使用参数 Object requestor。如果剪贴板当前不可用,则该方法抛出 IllegalStateException。例如,在某些平台上,系统剪贴板在被别的应用程序访问时是不可用的。

参数:
requestor - 请求剪切数据(不使用)的对象
返回:
剪贴板上的当前 transferable
抛出:
IllegalStateException - 如果剪贴板当前不可用
另请参见:
Toolkit.getSystemClipboard()

getAvailableDataFlavors

public DataFlavor[] getAvailableDataFlavors()
返回 DataFlavor 的数组,其中提供了此剪贴板的当前内容。如果不存在任何可用的 DataFlavor,则此方法返回一个长度为零的数组。

返回:
一组 DataFlavor,在其中可以提供此剪贴板的当前内容
抛出:
IllegalStateException - 如果此剪贴板当前不可用
从以下版本开始:
1.5

isDataFlavorAvailable

public boolean isDataFlavorAvailable(DataFlavor flavor)
返回是否能够以指定的 DataFlavor 形式提供此剪贴板的当前内容。

参数:
flavor - 为该内容请求的 DataFlavor
返回:
如果可以在指定的 DataFlavor 中提供此剪贴板的当前内容,则返回 true;否则返回 false
抛出:
NullPointerException - 如果 flavornull
IllegalStateException - 如果此剪贴板当前不可用
从以下版本开始:
1.5

getData

public Object getData(DataFlavor flavor)
               throws UnsupportedFlavorException,
                      IOException
返回一个对象,表示此剪贴板中指定 DataFlavor 类型的当前内容。返回对象的类是由 flavor 的表示形式类定义的。

参数:
flavor - 为该内容请求的 DataFlavor
返回:
一个对象,表示指定的 DataFlavor 中此剪贴板的当前内容
抛出:
NullPointerException - 如果 flavornull
IllegalStateException - 如果此剪贴板目前不可用
UnsupportedFlavorException - 如果请求的 DataFlavor 不可用
IOException - 如果无法检索请求的 DataFlavor 中的数据
从以下版本开始:
1.5
另请参见:
DataFlavor.getRepresentationClass()

addFlavorListener

public void addFlavorListener(FlavorListener listener)
注册指定的 FlavorListener,以从此剪贴板接收 FlavorEvent。如果 listenernull,则不会抛出异常并且不执行操作。

参数:
listener - 要添加的侦听器
从以下版本开始:
1.5
另请参见:
removeFlavorListener(java.awt.datatransfer.FlavorListener), getFlavorListeners(), FlavorListener, FlavorEvent

removeFlavorListener

public void removeFlavorListener(FlavorListener listener)
移除指定的 FlavorListener,使其不再从此 Clipboard 接收 FlavorEvent。如果参数所指定的侦听器尚未添加到此 Clipboard,则此方法不起作用,也不抛出异常。如果 listenernull,则不会抛出异常并且不执行操作。

参数:
listener - 要移除的侦听器
从以下版本开始:
1.5
另请参见:
addFlavorListener(java.awt.datatransfer.FlavorListener), getFlavorListeners(), FlavorListener, FlavorEvent

getFlavorListeners

public FlavorListener[] getFlavorListeners()
返回一组目前在此 Clipboard 上注册的所有 FlavorListener

返回:
此剪贴板的所有 FlavorListener,如果目前没有注册侦听器,则返回一个空数组
从以下版本开始:
1.5
另请参见:
addFlavorListener(java.awt.datatransfer.FlavorListener), removeFlavorListener(java.awt.datatransfer.FlavorListener), FlavorListener, FlavorEvent