Event.pairwise<'Del,'T> 函式 (F#)
傳回新事件,這是當第二次和之後觸發輸入事件時會觸發的事件。 第 N 次觸發輸入事件,會將第 N-1 次和第 N 次觸發時的引數成對傳遞。 傳遞給第 N-1 個觸發動作的引數會保留在隱藏的內部狀態中,直到第 N 個觸發動作發生為止。
命名空間/模組路徑:Microsoft.FSharp.Control.Event
組件:FSharp.Core (在 FSharp.Core.dll 中)
// Signature:
Event.pairwise : IEvent<'Del,'T> -> IEvent<'T * 'T> (requires delegate)
// Usage:
Event.pairwise sourceEvent
參數
sourceEvent
型別:IEvent<'Del,'T>輸入事件。
傳回值
從來源事件傳遞成對之連續值時觸發的事件。
備註
這個函式在已編譯的組件中名為 Pairwise。 如果您是透過 F# 以外的語言,或是透過反映來存取函式,請使用這個名稱。
範例
下列程式碼範例示範如何使用 Event.pairwise 函式。 在此範例中,函式會從多個 MouseMove事件提供資料,且使用該資料在連續滑鼠位置之間繪製線條。
open System.Windows.Forms
open System.Drawing
let form = new Form(Text = "F# Windows Form",
Visible = true,
TopMost = true)
let graphics = BufferedGraphicsManager.Current.Allocate(form.CreateGraphics(),
new Rectangle( 0, 0, form.Width, form.Height ))
let whitePen = new Pen(Color.White)
form.MouseClick
|> Event.pairwise
|> Event.add ( fun (evArgs1, evArgs2) ->
graphics.Graphics.DrawLine(whitePen, evArgs1.X, evArgs1.Y, evArgs2.X, evArgs2.Y)
form.Refresh())
form.Paint
|> Event.add(fun evArgs -> graphics.Render(evArgs.Graphics))
平台
Windows 8 中, Windows 7, Windows Server 2012 上, Windows Server 2008 R2
版本資訊
F# 核心程式庫版本
支援版本:2.0, 4.0,可攜式執行檔 (PE)。