java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

java.awt.dnd
接口 DropTargetListener

所有超级接口:
EventListener
所有已知实现类:
DropTarget, DropTargetAdapter

public interface DropTargetListener
extends EventListener

DropTargetListener 接口是 DropTarget 类所使用的回调接口,用于提供所涉及的 DropTarget 的 DnD 操作的通知。在整个 Drag 和 Drop 操作中,可以实现此接口的方法,向用户提供 "drag under" 的可视化反馈。

通过实现该接口,并使用 DropTarget 注册该接口,可以创建一个 listener 对象。当 drag 进入、移上或退出该 DropTarget 的 drop 位置的可操作部分时,当 drop 操作改变时,以及当 drop 操作发生时,调用 listener 对象的相关方法,并将 DropTargetEvent 传递到该方法。

DropTarget 的 drop 位置的可操作部分是关联 Component 几何结构的一部分,该部分不会被重叠的顶层窗口或另一 Z-order(顺序)更高的并具有关联的活动 DropTargetComponent 遮掩。

在 drag 过程中,通过对 DropTargetDragEvent 实例(该实例被传递给 listener 的方法)调用 getTransferable(),可以检索与当前 drag 操作相关的数据。

注意,DropTargetDragEvent 实例上的 getTransferable() 应该只在各自 listener 的方法中调用,并且应该在该方法返回前从返回的 Transferable 检索所有必需的数据。

从以下版本开始:
1.2

方法摘要
 void dragEnter(DropTargetDragEvent dtde)
          正在进行 drag 操作时调用,此时鼠标指针进入 DropTarget(使用此 listener 注册)的 drop 位置的可操作部分。
 void dragExit(DropTargetEvent dte)
          正在进行 drag 操作时调用,此时鼠标指针已退出 DropTarget(使用此 listener 注册)的 drop 位置的可操作部分。
 void dragOver(DropTargetDragEvent dtde)
          正在进行 drag 操作时调用,此时鼠标指针仍然处于 DropTarget(使用此 listener 注册)的 drop 位置的可操作部分。
 void drop(DropTargetDropEvent dtde)
          在 drag 操作已终止时调用,此时 drop 处于 DropTarget(使用此 listener 注册)的 drop 位置的可操作部分。
 void dropActionChanged(DropTargetDragEvent dtde)
          在用户已经修改了当前 drop 操作后调用。
 

方法详细信息

dragEnter

void dragEnter(DropTargetDragEvent dtde)
正在进行 drag 操作时调用,此时鼠标指针进入 DropTarget(使用此 listener 注册)的 drop 位置的可操作部分。

参数:
dtde - DropTargetDragEvent

dragOver

void dragOver(DropTargetDragEvent dtde)
正在进行 drag 操作时调用,此时鼠标指针仍然处于 DropTarget(使用此 listener 注册)的 drop 位置的可操作部分。

参数:
dtde - DropTargetDragEvent

dropActionChanged

void dropActionChanged(DropTargetDragEvent dtde)
在用户已经修改了当前 drop 操作后调用。

参数:
dtde - DropTargetDragEvent

dragExit

void dragExit(DropTargetEvent dte)
正在进行 drag 操作时调用,此时鼠标指针已退出 DropTarget(使用此 listener 注册)的 drop 位置的可操作部分。

参数:
dte - DropTargetEvent

drop

void drop(DropTargetDropEvent dtde)
在 drag 操作已终止时调用,此时 drop 处于 DropTarget(使用此 listener 注册)的 drop 位置的可操作部分。

此方法负责保证与操作相关的数据传输。DropTargetDropEvent 提供获得 Transferable 对象的手段,该对象表示要转换的数据对象。

利用此方法,DropTargetListener 将通过带 DropTargetDropEvent 参数的 acceptDrop(int dropAction) 或 rejectDrop() 方法来接受或拒绝 drop 操作。

在 acceptDrop() 之后(而不是之前),可以调用 DropTargetDropEvent 的 getTransferable() 方法,还可以通过返回的 Transferable 的 getTransferData() 方法执行数据传输。

完成 drop 之后,需要此方法实现指明 drop 成功还是失败,这通过传递合适的 booleanDropTargetDropEvent 的 dropComplete(boolean success) 方法来完成。

注:应该在调用 DropTargetDropEvent 的 dropComplete(boolean success) 方法之前完成数据传输。在此之后,调用由 DropTargetDropEvent.getTransferable() 返回的 Transferable 的 getTransferData() 方法,确保只有在数据传输限于本地时才会成功;也就是说,只有 DropTargetDropEvent.isLocalTransfer() 返回 true 时才会成功。否则,调用的行为是与实现相关的。

参数:
dtde - DropTargetDropEvent

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策