Ako Napodobniť Myš

Obsah:

Ako Napodobniť Myš
Ako Napodobniť Myš

Video: Ako Napodobniť Myš

Video: Ako Napodobniť Myš
Video: Chcel napodobniť Michaela Jackssona ! :D 2024, December
Anonim

Manipulátor typu „myš“je nevyhnutným atribútom každého počítača. Bez neho je nemožné si predstaviť ovládanie alebo navigáciu cez aplikácie. Tento manipulátor aktívne interaguje s používateľom zobrazovaním jeho akcií (pohyby, kliknutia, posúvanie) na obrazovke. Pre niektoré programovacie úlohy môže byť potrebná softvérová emulácia myši.

Ako napodobniť myš
Ako napodobniť myš

Je to nevyhnutné

vývojové prostredie Microsoft Visual C ++. Net (nie nižšie ako 2003)

Inštrukcie

Krok 1

Nainštalujte si Microsoft Visual C ++. Net (2003 alebo novší). Existuje niekoľko verzií tohto vývojového prostredia - platené a bezplatné. Dajú sa stiahnuť z webovej stránky vývojára. Po inštalácii vytvorte nový projekt a pripojte System. Windows. Forms a System. Drawing podľa obrázka nižšie: using System. Windows. Forms; pomocou System. Drawing;

Krok 2

Na pohyb myši po obrazovke v operačných systémoch Windows používajte funkcie, ktoré priamo nastavujú polohu kurzora na obrazovke. Použite napríklad nasledujúci kód: Cursor. Position = new Point (x, y); Tento riadok presunie kurzor na pozíciu určenú v konštruktore triedy Point (x, y) (kde x a y sú súradnice polohy, kde by mal byť umiestnený kurzor) … Ak potrebujete opakovane nastaviť pozíciu kurzora, vytvorte jednu inštanciu triedy Point a použite pre ňu metódu zmeny súradníc. Ušetrí sa tým pamäť: Bodový bod = nový Bod (0, 0); Cursor. Position = point. Offset (20, 100); Cursor. Position = point. Offset (40, -20); Tento kód vytvorí objekt triedy Point () so súradnicami 0, 0. Druhý riadok posúva Bod o 20 pixelov v X a 100 pixelov v Y. Aktuálna súradnica, na ktorú ukazuje bodový objekt, je 20, 100. Tretí riadok sa opäť stane bod posunutia o zadaný počet pixelov (40, respektíve -20). Aktuálna súradnica je 60 (20 + 40) v X a 80 (100-20) v Y.

Krok 3

Na napodobnenie kliknutia myšou použite funkcie Win32 SendInput () alebo mouse_event (). Napríklad na programovú simuláciu kliknutia pravým tlačidlom použite nasledujúci kód: // import mouse_event (): [DllImport ("User32.dll")] static extern void mouse_event (MouseFlags dwFlags, int dx, int dy, int dwData, UIntPtr dwExtraInfo); // pre jednoduchšie použitie vytvorte výčet s potrebnými konštantami (príznakmi) //, ktoré definujú akcie myši: [Flags] enum MouseFlags {Move = 0x0001, LeftDown = 0x0002, LeftUp = 0x0004, RightDown = 0x0008, RightUp = 0x0010, Absolútne = 0x8000}; // použitie - kliknite na súradnice nastavené nižšie: const int x = 39000; // súradnice podľa Xconst int y = 12000; // súradnice podľa 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. Absolútne | MouseFlags. RightUp, x, y, 0, UIntPtr. Zero);

Krok 4

Emulujte kliknutie myšou odosielaním správ WM_LBUTTONDOWN a WM_LBUTTONUP pomocou funkcie Win API SendMessage (). Napríklad ako je uvedené nižšie: void OnBtPerformClick (odosielateľ objektu, EventArgs e) {SendMessage (btDemo. Handle, Messages. WM_LBUTTONDOWN, MK_LBUTTON, IntPtr. Zero); SendMessage (btDemo. Handle, Messages. WM_LBUTTON, Messages. WM_LBUTTON, Messages. WM_LBUTTON,

Odporúča: