Application.RemoveMessageFilter(IMessageFilter) Methode

Definition

Entfernt einen Nachrichtenfilter aus der Nachrichtenpumpe der Anwendung.

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)

Parameter

value
IMessageFilter

Die Implementierung des IMessageFilter zu entfernenden Inhalts aus der Anwendung.

Beispiele

Bevor Sie einen Nachrichtenfilter verwenden können, müssen Sie eine Implementierung für die IMessageFilter Schnittstelle bereitstellen. Die folgende Klasse erstellt einen Nachrichtenfilter namens TestMessageFilter. Dieser Filter blockiert alle Nachrichten, die sich auf die linke Maustaste beziehen.

// 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

Hinweise

Sie können einen Nachrichtenfilter entfernen, wenn Sie nicht mehr Windows Nachrichten erfassen möchten, bevor sie verteilt werden.

Gilt für:

Weitere Informationen