共用方式為


InkOverlaySelectionMovedEventHandler 委派

表示處理 InkOverlay 物件之 SelectionMoved 事件的方法。

命名空間:  Microsoft.Ink
組件:  Microsoft.Ink (在 Microsoft.Ink.dll 中)

語法

'宣告
Public Delegate Sub InkOverlaySelectionMovedEventHandler ( _
    sender As Object, _
    e As InkOverlaySelectionMovedEventArgs _
)
'用途
Dim instance As New InkOverlaySelectionMovedEventHandler(AddressOf HandlerMethod)
public delegate void InkOverlaySelectionMovedEventHandler(
    Object sender,
    InkOverlaySelectionMovedEventArgs e
)
public delegate void InkOverlaySelectionMovedEventHandler(
    Object^ sender, 
    InkOverlaySelectionMovedEventArgs^ e
)
/** @delegate */
public delegate void InkOverlaySelectionMovedEventHandler(
    Object sender,
    InkOverlaySelectionMovedEventArgs e
)
JScript 不支援委派。

參數

備註

當目前選取項目的位置已經透過如更改使用者介面、剪貼程序或 Selection 屬性等方式變更時,就會發生 SelectionMoved 事件。

在建立 InkOverlaySelectionMovedEventHandler 委派 (Delegate) 時,您要識別處理事件的方法。若要使事件與您的事件處理常式產生關聯,請將委派的執行個體 (Instance) 加入至事件。除非您移除委派,否則每當事件發生時就會呼叫事件處理常式。基於效能考量,「Managed 程式碼」中相關事件的預設是關閉的,但是如果您加入事件處理常式就會自動開啟。

若要取得已移動之 Strokes 集合的新週框 (Bounding Rectangle),請呼叫 Strokes.GetBoundingBox 方法。

範例

在這個範例中,SelectionMoved 事件處理常式會在選取範圍移動之後檢查它。如果選取的 Strokes 集合已移動,使選取範圍的任何部分離開視窗左方或上方,則選取範圍會移回其原始位置。

Private Sub mInkObject_SelectionMoved(ByVal sender As Object, ByVal e As InkOverlaySelectionMovedEventArgs)
    ' mInkObject can be InkOverlay or InkPicture
    Dim newBounds As Rectangle = mInkObject.Selection.GetBoundingBox()
    ' Check if we have gone off the left or top sides of the window.
    If (newBounds.Left < 0 Or newBounds.Top < 0) Then
        ' Move to back to original spot
        mInkObject.Selection.Move(e.OldSelectionBoundingRect.Left - newBounds.Left, _
            e.OldSelectionBoundingRect.Top - newBounds.Top)
        ' Trick to insure that selection handles are updated
        mInkObject.Selection = mInkObject.Selection
    End If
End Sub
private void mInkObject_SelectionMoved(object sender, InkOverlaySelectionMovedEventArgs e)
{
    // mInkObject can be InkOverlay or InkPicture
    Rectangle newBounds = mInkObject.Selection.GetBoundingBox();

    // Check if we have gone off the left or top sides of the window.
    if (newBounds.Left < 0 || newBounds.Top < 0)
    {
        // Move to back to original spot
        mInkObject.Selection.Move(e.OldSelectionBoundingRect.Left - newBounds.Left,
            e.OldSelectionBoundingRect.Top - newBounds.Top);

        // Trick to insure that selection handles are updated
        mInkObject.Selection = mInkObject.Selection;
    }
}

平台

Windows Vista

.NET Framework 和 .NET Compact Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱 .NET Framework 系統需求

版本資訊

.NET Framework

支援版本:3.0

請參閱

參考

Microsoft.Ink 命名空間

InkOverlay.SelectionMoved

InkOverlay.SelectionMoving

Strokes