Comment émuler Une Souris

Table des matières:

Comment émuler Une Souris
Comment émuler Une Souris

Vidéo: Comment émuler Une Souris

Vidéo: Comment émuler Une Souris
Vidéo: Invacare LiNX - Comment utiliser l'émulation souris avec un manupulateur REM400 - PC 2024, Peut
Anonim

Un manipulateur de type "souris" est un attribut nécessaire de tout ordinateur. Sans elle, impossible d'imaginer le contrôle ou la navigation dans les applications. Ce manipulateur interagit activement avec l'utilisateur en affichant ses actions (mouvements, clics, défilement) sur l'écran. Pour certaines tâches de programmation, une émulation de souris logicielle peut être requise.

Comment émuler une souris
Comment émuler une souris

Il est nécessaire

Environnement de développement Microsoft Visual C ++. Net (pas inférieur à 2003)

Instructions

Étape 1

Installez Microsoft Visual C ++. Net (2003 ou version ultérieure). Il existe plusieurs versions de cet environnement de développement - payantes et gratuites. Ils peuvent être téléchargés sur le site Web du développeur. Après l'installation, créez un nouveau projet et connectez System. Windows. Forms et System. Drawing comme indiqué ci-dessous: en utilisant System. Windows. Forms; en utilisant System. Drawing;

Étape 2

Pour déplacer la souris sur l'écran dans les systèmes d'exploitation Windows, utilisez des fonctions qui définissent directement la position du curseur sur l'écran. Utilisez, par exemple, le code suivant: Cursor. Position = new Point (x, y); cette ligne déplacera le curseur à la position spécifiée dans le constructeur de la classe Point (x, y) (où x et y sont les coordonnées de la position où le curseur doit être placé) … Si vous devez définir la position du curseur à plusieurs reprises, créez une instance de la classe Point et utilisez la méthode pour modifier ses coordonnées. Cela économisera de la mémoire: Point point = nouveau Point (0, 0); Curseur. Position = point. Offset (20, 100); Curseur. Position = point. Décalage (40, -20); Ce code crée un objet de classe Point() avec les coordonnées 0, 0. La deuxième ligne décale le Point de 20 pixels en X et de 100 pixels en Y. La coordonnée actuelle pointée par l'objet point est 20, 100. La troisième ligne se produit à nouveau Offset Point par le nombre spécifié de pixels (40 et -20, respectivement). La coordonnée actuelle est 60 (20 + 40) en X et 80 (100-20) en Y.

Étape 3

Utilisez les fonctions Win32 SendInput () ou mouse_event () pour émuler un clic de souris. Par exemple, pour simuler par programmation un clic droit, utilisez le code suivant: // import mouse_event (): [DllImport ("User32.dll")] static extern void mouse_event (MouseFlags dwFlags, int dx, int dy, int dwData, UIntPtr dwExtraInfo); // pour faciliter l'utilisation, créez une énumération avec les constantes nécessaires (drapeaux) // qui définissent les actions de la souris: [Flags] enum MouseFlags {Move = 0x0001, LeftDown = 0x0002, LeftUp = 0x0004, RightDown = 0x0008, RightUp = 0x0010, Absolute = 0x8000 }; // utilisation - cliquez sur les coordonnées définies ci-dessous: const int x = 39000; // coordonnées par Xconst int y = 12000; // coordonnées par Ymouse_event (MouseFlags. Absolute | MouseFlags. Move, x, y, 0, UIntPtr. Zero); mouse_event (MouseFlags. Absolute | MouseFlags. RightDown, x, y, 0, UIntPtr. Zero); mouse_event (MouseFlags. Absolu | MouseFlags. RightUp, x, y, 0, UIntPtr. Zero);

Étape 4

Émulez un clic de souris en envoyant des messages WM_LBUTTONDOWN et WM_LBUTTONUP à l'aide de la fonction Win API SendMessage (). Par exemple, comme indiqué ci-dessous: void OnBtPerformClick (expéditeur d'objet, EventArgs e) {SendMessage (btDemo. Handle, Messages. WM_LBUTTONDOWN, MK_LBUTTON, IntPtr. Zero); SendMessage (btDemo. Handle, Messages. WM_LBUTTONUP} MKPTONR;

Conseillé: