Aracılığıyla paylaş


Application.RemoveMessageFilter(IMessageFilter) Yöntem

Tanım

Uygulamanın ileti pompasından ileti filtresini kaldırır.

public:
 static void RemoveMessageFilter(System::Windows::Forms::IMessageFilter ^ value);
public static void RemoveMessageFilter (System.Windows.Forms.IMessageFilter value);
static member RemoveMessageFilter : System.Windows.Forms.IMessageFilter -> unit
Public Shared Sub RemoveMessageFilter (value As IMessageFilter)

Parametreler

value
IMessageFilter

Uygulamadan kaldırılacak uygulamasının IMessageFilter uygulanması.

Örnekler

İleti filtresi kullanabilmeniz için arabirim için IMessageFilter bir uygulama sağlamanız gerekir. Aşağıdaki sınıf adlı TestMessageFilterbir ileti filtresi oluşturur. Bu filtre, sol fare düğmesiyle ilgili tüm iletileri engeller.

// Creates a  message filter.
ref class TestMessageFilter: public IMessageFilter
{
public:
   [SecurityPermission(SecurityAction::LinkDemand, Flags = SecurityPermissionFlag::UnmanagedCode)]
   virtual bool PreFilterMessage( Message % m )
   {
      
      // Blocks all the messages relating to the left mouse button.
      if ( m.Msg >= 513 && m.Msg <= 515 )
      {
         Console::WriteLine( "Processing the messages : {0}", m.Msg );
         return true;
      }

      return false;
   }

};
// Creates a  message filter.
public class TestMessageFilter : IMessageFilter
{
    public bool PreFilterMessage(ref Message m)
    {
        // Blocks all the messages relating to the left mouse button.
        if (m.Msg >= 513 && m.Msg <= 515)
        {
            Console.WriteLine("Processing the messages : " + m.Msg);
            return true;
        }
        return false;
    }
}
' Creates a message filter.
<SecurityPermission(SecurityAction.LinkDemand, Flags := SecurityPermissionFlag.UnmanagedCode)> _
Public Class TestMessageFilter
    Implements IMessageFilter

    <SecurityPermission(SecurityAction.Demand)> _
    Public Function PreFilterMessage(ByRef m As System.Windows.Forms.Message) _
    As Boolean Implements IMessageFilter.PreFilterMessage
        ' Blocks all the messages relating to the left mouse button.
        If ((m.Msg >= 513) And (m.Msg <= 515)) Then
            Console.WriteLine("Processing the messages : " & m.Msg)
            Return True
        End If
        Return False
    End Function
End Class

Açıklamalar

Artık Windows iletileri gönderilmeden önce yakalamak istemediğinizde ileti filtresini kaldırabilirsiniz.

Şunlara uygulanır

Ayrıca bkz.