Тышқанға қалай еліктеуге болады

Мазмұны:

Тышқанға қалай еліктеуге болады
Тышқанға қалай еліктеуге болады

Бейне: Тышқанға қалай еліктеуге болады

Бейне: Тышқанға қалай еліктеуге болады
Бейне: Как поймать грызунов. Мышеловка своими руками 2024, Мамыр
Anonim

«Тышқан» түріндегі манипулятор кез-келген компьютердің қажетті атрибуты болып табылады. Онсыз басқаруды немесе қосымшалар арқылы навигацияны елестету мүмкін емес. Бұл манипулятор экранда оның әрекеттерін (қимылдары, шерту, айналдыру) көрсету арқылы қолданушымен белсенді әрекеттеседі. Кейбір бағдарламалау міндеттері үшін бағдарламалық жасақтаманың тышқан эмуляциясы қажет болуы мүмкін.

Тышқанға қалай еліктеуге болады
Тышқанға қалай еліктеуге болады

Бұл қажетті

Microsoft Visual C ++. Net даму ортасы (2003 жылдан төмен емес)

Нұсқаулық

1-қадам

Microsoft Visual C ++. Net (2003 немесе одан кейінгі нұсқасын) орнатыңыз. Бұл дамытушы ортаның бірнеше нұсқалары бар - ақылы және ақысыз. Оларды әзірлеушінің веб-сайтынан жүктеуге болады. Орнатқаннан кейін жаңа жоба жасаңыз және System. Windows. Forms пен System. Drawing қосыңыз, төменде көрсетілгендей: System. Windows. Forms көмегімен; System. Drawing қолдану;

2-қадам

Windows амалдық жүйелерінде тінтуірді экран арқылы жылжыту үшін экранда курсордың орналасуын тікелей орнататын функцияларды қолданыңыз. Мысалы, келесі кодты қолданыңыз: Cursor. Position = жаңа нүкте (х, у); Бұл жол курсорды Point (x, y) класының конструкторында көрсетілген орынға жылжытады (мұндағы x және y - меңзерді орналастыру керек орынның координаттары) … Егер сізге курсордың орнын бірнеше рет қою керек болса, Point класының бір данасын құрыңыз және ол үшін координаттарды өзгерту әдісін қолданыңыз. Бұл жадты үнемдейді: Point point = new Point (0, 0); Курсор. Позиция = нүкте. Офсет (20, 100); Курсор. Позиция = нүкте. Офсет (40, -20); Бұл код 0 (0) координаталары бар Point () класының объектісін жасайды. Екінші жол нүктені X-де 20 пиксельге және Y-де 100 пиксельге жылжытады. Нүкте объектісі көрсеткен ағымдық координат 20, 100 құрайды. Үшінші жол белгіленген нүктелер саны бойынша Offset Point қайтадан болады (сәйкесінше 40 және -20). Ағымдағы координат X-де 60 (20 + 40) және Y-де 80 (100-20) құрайды.

3-қадам

Тінтуірді шерту үшін Win32 SendInput () немесе mouse_event () функцияларын пайдаланыңыз. Мысалы, тінтуірдің оң жақ түймешігін имитациялау үшін келесі кодты қолданыңыз: // import mouse_event (): [DllImport («User32.dll»)] static extern void mouse_event (MouseFlags dwFlags, int dx, int dy, int dwData, UIntPtr dwExtraInfo); // пайдалануды жеңілдету үшін тышқан әрекеттерін анықтайтын қажетті тұрақтылармен // санақ құрыңыз: [Flags] enum MouseFlags {Move = 0x0001, LeftDown = 0x0002, LeftUp = 0x0004, RightDown = 0x0008, RightUp = 0x0010, Absolute = 0x8000}; // use - төменде берілген координаталарды нұқыңыз: const int x = 39000; // координаталар Xconst int y = 12000; // координаттары 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. Абсолюттік | MouseFlags. RightUp, x, y, 0, UIntPtr. Zero);

4-қадам

Win API SendMessage () функциясын қолдану арқылы WM_LBUTTONDOWN және WM_LBUTTONUP хабарламаларын жіберу арқылы тышқанды нұқыңыз. Мысалы, төменде көрсетілгендей: void OnBtPerformClick (объект жіберушісі, EventArgs e) {SendMessage (btDemo. Handle, Messages. WM_LBUTTONDOWN, MK_LBUTTON, IntPtr. Zero); SendMessage (btDemo. Handle, Messages. WM_PBTON;

Ұсынылған: