Laden...

MouseFilter: Beeinflusst die Funktionsweise der Maus in Anwendungen

Erstellt von LonelyPixel vor 16 Jahren Letzter Beitrag vor 16 Jahren 2.937 Views
L
LonelyPixel Themenstarter:in
333 Beiträge seit 2007
vor 16 Jahren
MouseFilter: Beeinflusst die Funktionsweise der Maus in Anwendungen

Die MouseFilter-Komponente stellt Funktionen bereit, mit denen sich die Funktionsweise der Maus in Anwendungen beeinflussen lässt. Derzeit sind das folgende Funktionen:

Ausblenden des Mauszeigers nach Inaktivität

In Vollbild-Anwendungen kann es sinnvoll sein, den Mauszeiger bei Nichtbenutzung auszublenden. Dafür werden alle Windows-Nachrichten an die laufende Anwendung überwacht und der Mauszeiger nach einer Weile, in der die Maus nicht bewegt wurde, ausgeblendet. Wird die Maus bewegt, wird der Zeiger sofort wieder angezeigt, bis zur nächsten Inaktivität. Diese Funktion wird mit der Eigenschaft AutoHideCursor aktiviert. Außerdem werden die Ereignisse MouseHidden und MouseShown bereitgestellt, die über das Ausblenden bzw. Anzeigen des Mauszeigers benachrichtigen.

Weiterleiten der Mausrad-Eingaben an das Steuerelement unter dem Mauszeiger

Normalerweise werden Mausrad-Eingaben immer an das Steuerelement gesendet, das den Tastatur-Eingabefokus besitzt. Da das Rad aber an der Maus befestigt ist und nicht an der Tastatur, sollte es sich mehr nach der Position des Mauszeigers richten als nach dem Tastaturfokus. Aufgrund der Art und Weise wie Windows die entsprechenden Nachrichten versendet kann man allerdings nicht in inaktiven Fenstern scrollen, auch wenn der Cursor darüber steht. Diese Funktion wird mit der Eigenschaft DispatchMouseWheel aktiviert.

Allgemein genügt es, eine Instanz der MouseFilter-Komponente zu einem Fenster der Anwendung hinzuzufügen, um die Funktionen zu verwenden.

.NET Kompatibilität: 2.0

Download

Da diese Komponente eine Reihe von Hilfsklassen verwendet, die ich in meinen eigenen Anwendungen üblicherweise verwende, biete ich nur eine einfache Beispielanwendung zum Download an, die den gesamten benötigten Quelltext dieser Komponente enthält und gleichzeitig die Verwendung demonstriert. Die Dateien dieser Komponente befinden sich im Unclassified-Unterverzeichnis.

Homepage mit Download und ggf. neueren Versionen

Anlage zu diesem Beitrag: Quelltext der Beispielanwendung (Visual Studio 2005 C# Projekt, 18 kB, 15. September 2007)

Lizenz, Nutzungsbedingungen

Dieses Programm ist unter den Bedingungen der GNU General Public License (GPL), Version 2 oder neuer veröffentlicht.