Event.Filter < m','Del > Função (F#)
Retorna um novo evento que escuta para o evento original e dispare o evento resultante somente quando o argumento para o evento passa a função especificados.
Namespace/Module Path: Microsoft.FSharp.Control.Event
Assembly: FSharp.Core (em FSharp.Core.dll)
// Signature:
Event.filter : ('T -> bool) -> IEvent<'Del,'T> -> IEvent<'T> (requires delegate)
// Usage:
Event.filter predicate sourceEvent
Parâmetros
predicate
Tipo: 'T ->boolA função para determinar qual gatilho de evento se propagar.
sourceEvent
Tipo: IEvent<'Del,'T>O evento de entrada.
Valor de retorno
Um evento que passa apenas os valores que transmitem o predicado.
Comentários
Essa função é chamada Filter em assemblies compilados.Se você está acessando a função de um idioma diferente F#, ou com a reflexão, use este nome.
Exemplo
O exemplo de código a seguir mostra como usar a função de Event.filter .Em esse exemplo, os eventos do mouse são passados em somente quando o ponteiro do mouse está em uma determinada região.
let form = new Form(Text = "F# Windows Form",
Visible = true,
TopMost = true)
form.MouseMove
|> Event.filter ( fun evArgs -> evArgs.X > 100 && evArgs.Y > 100)
|> Event.add ( fun evArgs ->
form.BackColor <- System.Drawing.Color.FromArgb(
evArgs.X, evArgs.Y, evArgs.X ^^^ evArgs.Y) )
Plataformas
O windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2
Informações de Versão
Versões da biblioteca principal de F#
Suportado em: 2,0, 4,0, portáteis