Kako Posnemati Miško

Kazalo:

Kako Posnemati Miško
Kako Posnemati Miško

Video: Kako Posnemati Miško

Video: Kako Posnemati Miško
Video: The Only Bra Hack Men Will Ever Need 2024, November
Anonim

Manipulator tipa "miška" je nujen atribut katerega koli računalnika. Brez tega si ni mogoče predstavljati nadzora ali krmarjenja po aplikacijah. Ta manipulator aktivno komunicira z uporabnikom tako, da na zaslonu prikaže njegova dejanja (premike, klike, pomikanje). Za nekatere programske naloge bo morda potrebna emulacija programske miške.

Kako posnemati miško
Kako posnemati miško

Potrebno je

Razvojno okolje Microsoft Visual C ++. Net (ne nižje od leta 2003)

Navodila

Korak 1

Namestite Microsoft Visual C ++. Net (2003 ali novejši). Obstaja več različic tega razvojnega okolja - plačljivih in brezplačnih. Lahko jih prenesete s spletnega mesta razvijalca. Po namestitvi ustvarite nov projekt in povežite System. Windows. Forms in System. Drawing, kot je prikazano spodaj: z uporabo System. Windows. Forms; z uporabo System. Drawing;

2. korak

Če želite v operacijskih sistemih Windows premikati miško po zaslonu, uporabite funkcije, ki neposredno določijo položaj kazalca na zaslonu. Uporabite na primer naslednjo kodo: Cursor. Position = nova točka (x, y); Ta vrstica bo kazalec premaknila na položaj, določen v konstruktorju razreda Point (x, y) (kjer sta x in y koordinate položaja, kamor naj bo postavljen kazalec) … Če morate položaj kurzorja nastaviti večkrat, ustvarite en primerek razreda Point in uporabite metodo za spreminjanje koordinat zanj. To bo prihranilo pomnilnik: Točka točka = nova točka (0, 0); Cursor. Position = point. Offset (20, 100); Kurzor. Pozition = point. Offset (40, -20); Ta koda ustvari objekt razreda Point () s koordinatami 0, 0. Druga vrstica premakne Točko za 20 slikovnih pik v X in 100 slikovnih pik v Y. Trenutna koordinata, na katero kaže točka, je 20, 100. Tretja vrstica spet se zgodi Offset Point za določeno število slikovnih pik (40 oziroma -20). Trenutna koordinata je 60 (20 + 40) v X in 80 (100-20) v Y.

3. korak

Za posnemanje klika miške uporabite funkciji Win32 SendInput () ali mouse_event (). Na primer, da programsko simulirate desni klik, uporabite naslednjo kodo: // uvozi mouse_event (): [DllImport ("User32.dll")] static extern void mouse_event (MouseFlags dwFlags, int dx, int dy, int dwData, UIntPtr dwExtraInfo); // za lažjo uporabo ustvarite naštevanje s potrebnimi konstantami (zastavicami) //, ki definirajo dejanja miške: [Flags] enum MouseFlags {Move = 0x0001, LeftDown = 0x0002, LeftUp = 0x0004, RightDown = 0x0008, RightUp = 0x0010, Absolutno = 0x8000}; // uporaba - kliknite spodnje koordinate: const int x = 39000; // koordinate po Xconst int y = 12000; // koordinate: Ymouse_event (MouseFlags. Absolute | MouseFlags. Move, x, y, 0, UIntPtr. Zero); mouse_event (MouseFlags. Absolute | MouseFlags. RightDown, x, y, 0, UIntPtr. Zero); mouse_lags. Absolutno | MouseFlags. RightUp, x, y, 0, UIntPtr. Zero);

4. korak

Posnemajte klik miške s pošiljanjem sporočil WM_LBUTTONDOWN in WM_LBUTTONUP s pomočjo funkcije Win API SendMessage (). Na primer, kot je prikazano spodaj: void OnBtPerformClick (pošiljatelj predmeta, EventArgs e) {SendMessage (btDemo. Handle, Messages. WM_LBUTTONDOWN, MK_LBUTTON, IntPtr. Zero); SendMessage (btDemo. Handle, Messages. WM_TPRTMONTTPONTONPTTONON.

Priporočena: