Hogyan Kell Utánozni Az Egeret

Tartalomjegyzék:

Hogyan Kell Utánozni Az Egeret
Hogyan Kell Utánozni Az Egeret

Videó: Hogyan Kell Utánozni Az Egeret

Videó: Hogyan Kell Utánozni Az Egeret
Videó: Az egérmutató kinézetének módosítása Windows 10 alatt. 2024, November
Anonim

Az "egér" típusú manipulátor minden számítógép szükséges attribútuma. Enélkül lehetetlen elképzelni az irányítást vagy az alkalmazásokon keresztüli navigációt. Ez a manipulátor aktívan interakcióba lép a felhasználóval azáltal, hogy a képernyőn megjeleníti műveleteit (mozdulatait, kattintásait, görgetését). Egyes programozási feladatokhoz szoftveres egéremulációra lehet szükség.

Hogyan kell utánozni az egeret
Hogyan kell utánozni az egeret

Szükséges

Microsoft Visual C ++. Net fejlesztői környezet (nem alacsonyabb, mint 2003)

Utasítás

1. lépés

Telepítse a Microsoft Visual C ++. Net (2003 vagy újabb) verziót. Ennek a fejlesztői környezetnek több változata létezik - fizetős és ingyenes. Letölthetők a fejlesztő weboldaláról. A telepítés után hozzon létre egy új projektet, és csatlakoztassa a System. Windows. Forms és a System. Drawing alkalmazást az alábbiak szerint: a System. Windows. Forms használatával; a System. Drawing;

2. lépés

Az egér mozgatásához a képernyőn Windows operációs rendszerekben használjon olyan funkciókat, amelyek közvetlenül beállítják a kurzor helyét a képernyőn. Használja például a következő kódot: Kurzor. Pozíció = új pont (x, y); Ez a sor a kurzort a Pont (x, y) osztály konstruktorában megadott helyre mozgatja (ahol x és y a a kurzor elhelyezésének koordinátái) … Ha ismételten be kell állítania a kurzor pozícióját, hozzon létre egy pontot a Pont osztályból, és használja a módszerét a koordináták megváltoztatásához. Ez megtakarítja a memóriát: Pontpont = új Pont (0, 0); Kurzor. Pozíció = pont. Eltolás (20, 100); Kurzor. Pozíció = pont. Eltolás (40, -20); Ez a kód egy Point () osztályú objektumot hoz létre 0, 0 koordinátákkal. A második vonal elmozdítja a pontot 20 pixellel X-ben és 100 pixellel Y-ben. A pontobjektum által jelzett aktuális koordináta 20, 100. ismét megtörténik az Eltolás pont a megadott pixelszámmal (40, illetve -20). A jelenlegi koordináta 60 (20 + 40) X-ben és 80 (100-20) Y-ban.

3. lépés

Használja a Win32 SendInput () vagy mouse_event () függvényeket egérkattintás utánzásához. Például egy jobb kattintás programozott szimulálásához használja a következő kódot: // import mouse_event (): [DllImport ("User32.dll")] static extern void mouse_event (MouseFlags dwFlags, int dx, int dy, int dwData, UIntPtr dwExtraInfo); // a könnyebb használat érdekében hozzon létre egy felsorolást a szükséges konstansokkal (zászlókkal) //, amelyek meghatározzák az egérműveleteket: [Flags] enum MouseFlags {Move = 0x0001, LeftDown = 0x0002, LeftUp = 0x0004, RightDown = 0x0008, RightUp = 0x0010, Absolute = 0x8000}; // use - kattintson az alábbi koordinátákra: const int x = 39000; // koordináták Xconst által int = 12000; // koordináták: Ymouse_event (MouseFlags. Absolute | MouseFlags. Move, x, y, 0, UIntPtr. Zero); mouse_event (MouseFlags. Absolute | MouseFlags. RightDown, x, y, 0, UIntPtr. Zero); mouse_event (mouse_event). Abszolút | MouseFlags. RightUp, x, y, 0, UIntPtr. Zero);

4. lépés

Emuláljon egérkattintást WM_LBUTTONDOWN és WM_LBUTTONUP üzenetek küldésével a Win API SendMessage () függvény segítségével. Például az alábbiak szerint: void OnBtPerformClick (objektumküldő, EventArgs e) {SendMessage (btDemo. Handle, Messages. WM_LBUTTONDOWN, MK_LBUTTON, IntPtr. Zero); SendMessage (btDemo. Handle, Messages. WM_LBUTTONUP)

Ajánlott: