JavaTM 2 Platform
Standard Ed. 6

java.awt.dnd
類別 DropTarget

java.lang.Object
  繼承者 java.awt.dnd.DropTarget
所有已實作的介面:
DropTargetListener, Serializable, EventListener

public class DropTarget
extends Object
implements DropTargetListener, Serializable

在 Drag 和 Drop 操作期間,當 Component 希望接受 drop 時,DropTargetComponent 有關聯。

每個 DropTarget 都與一個 FlavorMap 關聯。這之後預設的 FlavorMap 指定 SystemFlavorMap.getDefaultFlavorMap() 所返回的 FlavorMap

從以下版本開始:
1.2
另請參見:
序列化表格

巢狀類別摘要
protected static class DropTarget.DropTargetAutoScroller
          此受保護的巢狀類別實作自動滾動
 
建構子摘要
DropTarget()
          創建一個 DropTarget
DropTarget(Component c, DropTargetListener dtl)
          在給出與之關聯的 Component 和執行事件處理的 DropTargetListener 的情況下創建一個 DropTarget
DropTarget(Component c, int ops, DropTargetListener dtl)
          在給出與之關聯的 Component、表示支持的預設可接受操作的 int 值和執行事件處理的 DropTargetListener 的情況下,創建一個 DropTarget
DropTarget(Component c, int ops, DropTargetListener dtl, boolean act)
          在給出與之關聯的 Component、表示支持的預設可接受操作的 int 值、執行事件處理的 DropTargetListener 和表示 DropTarget 當前是否接受 drop 的 boolean 值的情況下,創建一個 DropTarget
DropTarget(Component c, int ops, DropTargetListener dtl, boolean act, FlavorMap fm)
          在給出與之關聯的 Component、表示要支持的預設可接受操作的 int 值、執行事件處理的 DropTargetListener、表示 DropTarget 當前是否接受 drop 的 boolean 值和要使用的 FlavorMap(使用預設 FlavorMap 時為 null)的情況下,創建一個新的 DropTarget。
 
方法摘要
 void addDropTargetListener(DropTargetListener dtl)
          添加一個新的 DropTargetListener (UNICAST SOURCE)。
 void addNotify(java.awt.peer.ComponentPeer peer)
          通知 DropTarget 它已經與某個 Component 關聯。
protected  void clearAutoscroll()
          清除自動滾動
protected  DropTarget.DropTargetAutoScroller createDropTargetAutoScroller(Component c, Point p)
          創建一個嵌入式自動滾動條
protected  DropTargetContext createDropTargetContext()
          創建與此 DropTarget 關聯的 DropTargetContext。
 void dragEnter(DropTargetDragEvent dtde)
          在已註冊的 DropTargetListener 上調用 dragEnter,並將其傳遞給指定的 DropTargetDragEvent
 void dragExit(DropTargetEvent dte)
          在已註冊的 DropTargetListener 上調用 dragExit,並將其傳遞給指定的 DropTargetEvent
 void dragOver(DropTargetDragEvent dtde)
          在已註冊的 DropTargetListener 上調用 dragOver,並將其傳遞給指定的 DropTargetDragEvent
 void drop(DropTargetDropEvent dtde)
          如果此 DropTarget 處於啟動狀態,則在已註冊的 DropTargetListener 上調用 drop,並將其傳遞給指定的 DropTargetDropEvent
 void dropActionChanged(DropTargetDragEvent dtde)
          在已註冊的 DropTargetListener 上調用 dropActionChanged,並將其傳遞給指定的 DropTargetDragEvent
 Component getComponent()
          獲取與此 DropTarget 關聯的 Component
 int getDefaultActions()
          獲取表示受此 DropTarget 支持的當前操作的 int 值。
 DropTargetContext getDropTargetContext()
          獲取與此 DropTarget 關聯的 DropTargetContext
 FlavorMap getFlavorMap()
          獲取與此 DropTarget 關聯的 FlavorMap
protected  void initializeAutoscrolling(Point p)
          初始化自動滾動
 boolean isActive()
          報告此 DropTarget 當前是否為啟動狀態(準備接受 drop)。
 void removeDropTargetListener(DropTargetListener dtl)
          移除當前的 DropTargetListener (UNICAST SOURCE)。
 void removeNotify(java.awt.peer.ComponentPeer peer)
          通知 DropTarget 它已經與某個 Component 解除關聯。
 void setActive(boolean isActive)
          如果為 true,則將 DropTarget 設置為啟動狀態;如果為 false,則將 DropTarget 設置為非啟動狀態。
 void setComponent(Component c)
          注意:要求此介面允許 DropTarget 以下面兩種方式之一與 Component 安全關聯:component.setDropTarget(droptarget)droptarget.setComponent(component)
 void setDefaultActions(int ops)
          為此 DropTarget 設置預設的可接受操作。
 void setFlavorMap(FlavorMap fm)
          設置 FlavorMap 與此 DropTarget 關聯。
protected  void updateAutoscroll(Point dragCursorLocn)
          使用當前的鼠標位置更新自動滾動
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

建構子詳細資訊

DropTarget

public DropTarget(Component c,
                  int ops,
                  DropTargetListener dtl,
                  boolean act,
                  FlavorMap fm)
           throws HeadlessException
在給出與之關聯的 Component、表示要支持的預設可接受操作的 int 值、執行事件處理的 DropTargetListener、表示 DropTarget 當前是否接受 drop 的 boolean 值和要使用的 FlavorMap(使用預設 FlavorMap 時為 null)的情況下,創建一個新的 DropTarget。

僅在已啟用時 Component 才會接收 drop。

參數:
c - 與此 DropTarget 有關聯的 Component
ops - 此 DropTarget 的預設可接受操作
dtl - 此 DropTargetDropTargetListener
act - DropTarget 是否接收 drop。
fm - 要使用的 FlavorMap,使用預設 FlavorMap 時為 null
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

DropTarget

public DropTarget(Component c,
                  int ops,
                  DropTargetListener dtl,
                  boolean act)
           throws HeadlessException
在給出與之關聯的 Component、表示支持的預設可接受操作的 int 值、執行事件處理的 DropTargetListener 和表示 DropTarget 當前是否接受 drop 的 boolean 值的情況下,創建一個 DropTarget

僅在已啟用時 Component 才會接收 drop。

參數:
c - 與此 DropTarget 有關聯的 Component
ops - 此 DropTarget 的預設可接受操作
dtl - 此 DropTargetDropTargetListener
act - DropTarget 是否接收 drop。
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

DropTarget

public DropTarget()
           throws HeadlessException
創建一個 DropTarget

拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

DropTarget

public DropTarget(Component c,
                  DropTargetListener dtl)
           throws HeadlessException
在給出與之關聯的 Component 和執行事件處理的 DropTargetListener 的情況下創建一個 DropTarget

僅在已啟用時 Component 才會接收 drop。

參數:
c - 與此 DropTarget 有關聯的 Component
dtl - 此 DropTargetDropTargetListener
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
另請參見:
GraphicsEnvironment.isHeadless()

DropTarget

public DropTarget(Component c,
                  int ops,
                  DropTargetListener dtl)
           throws HeadlessException
在給出與之關聯的 Component、表示支持的預設可接受操作的 int 值和執行事件處理的 DropTargetListener 的情況下,創建一個 DropTarget

僅在已啟用時 Component 才會接收 drop。

參數:
c - 與此 DropTarget 有關聯的 Component
ops - 此 DropTarget 的預設可接受操作
dtl - 此 DropTargetDropTargetListener
拋出:
HeadlessException - 如果 GraphicsEnvironment.isHeadless() 返回 true
另請參見:
GraphicsEnvironment.isHeadless()
方法詳細資訊

setComponent

public void setComponent(Component c)
注意:要求此介面允許 DropTarget 以下面兩種方式之一與 Component 安全關聯:component.setDropTarget(droptarget)droptarget.setComponent(component)

僅在已啟用時 Component 才會接收 drop。

參數:
c - 此 DropTarget 要關聯的新 Component


getComponent

public Component getComponent()
獲取與此 DropTarget 關聯的 Component

返回:
當前的 Component

setDefaultActions

public void setDefaultActions(int ops)
為此 DropTarget 設置預設的可接受操作。

參數:
ops - 預設操作

另請參見:
DnDConstants

getDefaultActions

public int getDefaultActions()
獲取表示受此 DropTarget 支持的當前操作的 int 值。

返回:
當前的預設操作

setActive

public void setActive(boolean isActive)
如果為 true,則將 DropTarget 設置為啟動狀態;如果為 false,則將 DropTarget 設置為非啟動狀態。

參數:
isActive - 將 DropTarget 設置為(非)啟動狀態。

isActive

public boolean isActive()
報告此 DropTarget 當前是否為啟動狀態(準備接受 drop)。

返回:
如果為啟動狀態,則返回 true;否則返回 false

addDropTargetListener

public void addDropTargetListener(DropTargetListener dtl)
                           throws TooManyListenersException
添加一個新的 DropTargetListener (UNICAST SOURCE)。

參數:
dtl - 新的 DropTargetListener

拋出:
TooManyListenersException - 如果已向此 DropTarget 添加 DropTargetListener
TooManyListenersException

removeDropTargetListener

public void removeDropTargetListener(DropTargetListener dtl)
移除當前的 DropTargetListener (UNICAST SOURCE)。

參數:
dtl - 要取消註冊的 DropTargetListener。

dragEnter

public void dragEnter(DropTargetDragEvent dtde)
在已註冊的 DropTargetListener 上調用 dragEnter,並將其傳遞給指定的 DropTargetDragEvent。 如果此 DropTarget 是非啟動狀態,則此調用無效。

指定者:
介面 DropTargetListener 中的 dragEnter
參數:
dtde - DropTargetDragEvent
拋出:
NullPointerException - 如果此 DropTarget 處於啟動狀態並且 dtdenull
另請參見:
isActive()

dragOver

public void dragOver(DropTargetDragEvent dtde)
在已註冊的 DropTargetListener 上調用 dragOver,並將其傳遞給指定的 DropTargetDragEvent。 如果此 DropTarget 是非啟動狀態,則該調用無效。

指定者:
介面 DropTargetListener 中的 dragOver
參數:
dtde - DropTargetDragEvent
拋出:
NullPointerException - 如果此 DropTarget 處於啟動狀態並且 dtdenull
另請參見:
isActive()

dropActionChanged

public void dropActionChanged(DropTargetDragEvent dtde)
在已註冊的 DropTargetListener 上調用 dropActionChanged,並將其傳遞給指定的 DropTargetDragEvent。 如果此 DropTarget 是非啟動狀態,則此調用無效。

指定者:
介面 DropTargetListener 中的 dropActionChanged
參數:
dtde - DropTargetDragEvent
拋出:
NullPointerException - 如果此 DropTarget 處於啟動狀態並且 dtdenull
另請參見:
isActive()

dragExit

public void dragExit(DropTargetEvent dte)
在已註冊的 DropTargetListener 上調用 dragExit,並將其傳遞給指定的 DropTargetEvent。 如果此 DropTarget 是非啟動狀態,則此調用無效。

對於 null 參數,此方法本身並不拋出任何異常,而是由相應的偵聽器方法拋出異常。

指定者:
介面 DropTargetListener 中的 dragExit
參數:
dte - DropTargetEvent
另請參見:
isActive()

drop

public void drop(DropTargetDropEvent dtde)
如果此 DropTarget 處於啟動狀態,則在已註冊的 DropTargetListener 上調用 drop,並將其傳遞給指定的 DropTargetDropEvent

指定者:
介面 DropTargetListener 中的 drop
參數:
dtde - DropTargetDropEvent
拋出:
NullPointerException - 如果 dtde 為 null 並且以下條件中至少有一個為真:此 DropTarget 不處於啟動狀態,或者沒有已註冊的 DropTargetListener
另請參見:
isActive()

getFlavorMap

public FlavorMap getFlavorMap()
獲取與此 DropTarget 關聯的 FlavorMap。 如果沒有為此 DropTarget 設置 FlavorMap,則它與預設的 FlavorMap 關聯。

返回:
此 DropTarget 的 FlavorMap

setFlavorMap

public void setFlavorMap(FlavorMap fm)
設置 FlavorMap 與此 DropTarget 關聯。

參數:
fm - 新的 FlavorMap,如果將預設的 FlavorMap 與此 DropTarget 關聯,則為 null。

addNotify

public void addNotify(java.awt.peer.ComponentPeer peer)
通知 DropTarget 它已經與某個 Component 關聯。通常從與此 DropTarget 相關聯 Component 的 java.awt.Component.addNotify() 調用此方法,以通知 DropTarget 一個 ComponentPeer 已經與該 Component 關聯。調用此方法,而不是將 ComponentPeer 與 Component 的關聯通知給此 DropTarget,這可能導致 DnD 系統故障。

參數:
peer - 與該 Component 關聯的同位體

removeNotify

public void removeNotify(java.awt.peer.ComponentPeer peer)
通知 DropTarget 它已經與某個 Component 解除關聯。通常從與此 DropTarget 相關聯 Component 的 java.awt.Component.removeNotify() 調用此方法,以通知 DropTarget 一個 ComponentPeer 已經與該 Component 解除關聯。調用此方法,而不是將 ComponentPeer 與 Component 的解除關聯通知給此 DropTarget,這可能導致 DnD 系統故障。

參數:
peer - 與該 Component 解除關聯的同位體

getDropTargetContext

public DropTargetContext getDropTargetContext()
獲取與此 DropTarget 關聯的 DropTargetContext

返回:
與此 DropTarget 關聯的 DropTargetContext

createDropTargetContext

protected DropTargetContext createDropTargetContext()
創建與此 DropTarget 關聯的 DropTargetContext。子類別可能覆寫此方法,以實例化它們自己的 DropTargetContext 子類別。 通常只在拖動操作遇到此 DropTarget 時才由平臺的 DropTargetContextPeer 調用此方法。在當前沒有 Drag 時存取 Context 的結果是不明確的。


createDropTargetAutoScroller

protected DropTarget.DropTargetAutoScroller createDropTargetAutoScroller(Component c,
                                                                         Point p)
創建一個嵌入式自動滾動條

參數:
c - Component
p - Point

initializeAutoscrolling

protected void initializeAutoscrolling(Point p)
初始化自動滾動

參數:
p - Point

updateAutoscroll

protected void updateAutoscroll(Point dragCursorLocn)
使用當前的鼠標位置更新自動滾動

參數:
dragCursorLocn - Point

clearAutoscroll

protected void clearAutoscroll()
清除自動滾動


JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only