共用方式為


BeforeDragOver 事件

發生于拖放作業進行時。

語法

針對 Frame
Private Sub物件 _BeforeDragOver ( ByValCancelAs MSForms.ReturnBoolean
ctrlAs Control
ByValDataAs DataObject
ByValXAs Single
ByValYAs Single
ByValDragStateAs fmDragState
ByValEffectAs MSForms.ReturnEffect
ByValShiftAs fmShiftState)

針對 MultiPage
Private Sub物件_BeforeDragOver (indexAs Long
ByValCancelAs MSForms.ReturnBoolean
ctrlAs Control
ByValDataAs DataObject
ByValXAs Single
ByValYAs Single
ByValDragStateAs fmDragState
ByValEffectAs MSForms.ReturnEffect
ByValShiftAs fmShiftState)

針對 TabStrip
Private Sub物件_BeforeDragOver (indexAs Long
ByValCancelAs MSForms.ReturnBoolean
ByValDataAs DataObject
ByValXAs Single
ByValYAs Single
ByValDragStateAs fmDragState
ByValEffectAs MSForms.ReturnEffect
ByValShiftAs fmShiftState)

針對其他控制項
Private Sub物件 _BeforeDragOver ( ByValCancelAs MSForms.ReturnBoolean
ByValDataAs DataObject
ByValXAs Single
ByValYAs Single
ByValDragStateAs fmDragState
ByValEffectAs MSForms.ReturnEffect
ByValShiftAs fmShiftState)

BeforeDragOver事件語法包含下列部分:

部分 描述
物件 此為必要動作。 有效的物件名稱。
index 此為必要動作。 MultiPage中拖放作業將影響的Page索引。
Cancel 此為必要動作。 事件狀態。 False 表示控制項應該處理事件 (預設) 。 True 表示應用程式處理事件。
Ctrl 此為必要動作。 要拖曳的控制項。
資料 此為必要動作。 拖放作業中拖曳的資料。 資料會封裝在 DataObject 中
X、Y 此為必要動作。 控制項位置的水準和垂直座標。 這兩個座標都是以點為單位來測量。 X 是從控制項的左邊緣測量; Y 是從 控制項的頂端測量而來。
DragState 此為必要動作。 正在拖曳之資料的轉換狀態。
Effect 此為必要動作。 卸 除來源支援的作業
Shift 此為必要動作。 指定 SHIFT、CTRL 和 ALT 的狀態。

設定

DragState的設定如下:

常數 描述
fmDragStateEnter 0 滑鼠指標位於目標範圍內。
fmDragStateLeave 1 滑鼠指標超出目標的範圍。
fmDragStateOver 2 滑鼠指標位於新的位置,但會保持在相同目標的範圍內。

Effect的設定如下:

常數 描述
fmDropEffectNone 0 不會將置放來源複製或移動到置放目標。
fmDropEffectCopy 1 將置放來源複製到置放目標。
fmDropEffectMove 2 將置放來源移至置放目標。
fmDropEffectCopyOrMove 3 將置放來源複製或移動至置放目標。

Shift的設定如下:

常數 描述
fmShiftMask 1 已按下 SHIFT。
fmCtrlMask 2 按下 CTRL。
fmAltMask 4 已按下 ALT。

註解

使用此事件來監視滑鼠指標,因為它會直接進入、離開或停留在有效的 目標上。 進行拖放作業時,系統會在使用者移動滑鼠時起始此事件,或是按下或放開滑鼠按鍵或按鈕。 滑鼠指標位置會決定接收此事件的目標物件。 您可以檢查 DragState 引數來判斷滑鼠指標的狀態。

當控制項處理此事件時,您可以使用 Effect 引數來識別要執行的拖放動作。

Effect 設定為 fmDropEffectCopyOrMove時,卸載來源支援 複製 (fmDropEffectCopy) 、移動 (fmDropEffectMove) ,或取消 (fmDropEffectNone) 作業。

Effect 設定為 fmDropEffectCopy時,卸載來源支援複本或取消 (fmDropEffectNone) 作業。

Effect 設定為 fmDropEffectMove時,置放來源支援移動或取消 (fmDropEffectNone) 作業。

Effect 設定為 fmDropEffectNone時,置放來源支援取消作業。

大部分的控制項都不支援拖放,而 CancelFalse,這是預設設定。 這表示控制項會拒絕在控制項上拖放任何動作的嘗試,而且控制項不會起始 BeforeDropOrPaste 事件。 TextBoxComboBox控制項是這個 的例外狀況;即使CancelFalse,這些控制項仍支援拖放作業。

另請參閱

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應